c语言中声明常量的两种方式 const int value int const value 如果要声明常量的指针,即指向常量的指针,则可以参考上面的常量声明修改一下 const int *ptr int const *ptr 把*ptr看成一个整体,那么*ptr中的ptr就是指向常量的指针了.顾名思义,指向常量的指针,那么就不可以通过这个指针去修改这个值了. #include <stdio.h> int main(){ int val = 123; int const *ptr = &…
简要概述: <C和指针>第三章对数据进行了描述. 其中主要讲解了---变量的三个属性:作用域.链接属性和存储类型. 这三个属性决定了该变量在“什么地方可以使用”以及“该变量的值能够保持多久”. 总结作用域: 1.文件作用域.代码块作用域.原型作用域和函数作用域 文件作用域:在代码块之外声明的标识符 file scope 代码块作用域:声明在{}中 原型作用域:int getScore(int ucStudent); 该函数原型声明中,int ucStudent具有原型作用域 函数作用域:这个不…
变量的储存类型决定标量何时创建,何时销毁以及他的值保持多久.有三个地方可以储存变量: 普通内存static 运行时堆栈auto 硬件寄存器register 变量的缺省储存类型取决于它的声明位置: 静态变量static: 凡是在代码块之外声明的变量总是存储于静态内存中,不属于堆栈的内存,无法为他们指定其他的储存类型,静态变量在程序运行之前创建,在整个程序执行期间始终存在,他始终保持原先的值,除非给他赋一个不同的值或者程序结束 自动变量auto:  在代码块内部声明的变量,储存于堆栈中,称为自动变量…
三种链接属性 组成一个程序有多个源文件,如果相同的标识符出现在多个源文件中,那么标识符的链接属性决定如何处理在不同文件中出现的标识符. 链接属性有三种: external:外部 多个源文件中的相同标识符指向同一个实体 internal:内部 同一个源文件中标识符指向同一个实体 none:无 当做单独的实体,只有在代码块内部出现,每次出现都是不同的独立实体. typede char *a; int b; int c(int d) { int e; int f(int g); } 其中,b,c和f为…
在一个源文件中,有两个函数x和y,定义一个链接属性external储存类型static的变量a,且y可以访问,x不可以访问,该如何定义呢? #include <stdio.h> void x() { } int a = 1;//变量的作用域是在定义的地方开始所以放在y前面即可,默认链接属性external,储存类型static void y() { }…
代码块作用域: 任何位于一对花括号之间是一个代码块,代码块内声明的标识符具有代码块作用域,嵌套代码块内,内部变量会屏蔽外部相同标示的标示符,非嵌套代码块,不会同时处于活动状态所以不会屏蔽. int main() { int value = 123; { int value = 456; printf("%d\n", value); } { int value = 789; printf("%d\n", value); } printf("%d\n"…
第三章 数据 本章是非常重要的,在特定范围内使用.链接属性.存储类型.const.extern和statickeyword使用.几乎所有的公司是C++在采访的第一个问题. 总结: 具有external链接属性(包含external.internal.None)的实体在其它语言的术语里称为全局实体(global),全部cpp里的函数都能够訪问它. 仅仅要声明的时候在函数体或代码块外部(包含main函数).默认的链接属性都是external. 假设声明的在代码块内部,说明它引用的是一个全局变量. 具…
今天继续完成上周没有完成的习题---C++第三章课后作业,本章题涉及指针的使用,有指向对象的指针做函数参数,对象的引用以及友元类的使用方法等 它们具体的使用方法在下面的题目中会有具体的解析(解析标注在代码中). 题目: 1.建立一个对象数组,内放5个学生数据(学号,成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出5个学生中成绩最高者,并输出其学号. #include <iostream> #include<stdlib.h> using namespace…
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 概览 指针是C语言的精髓,但是很多初学者往往对于指针的概念并不深刻,以至于学完之后随着时间的推移越来越模糊,感觉指针难以掌握,本文通过简单的例子试图将指针解释清楚,今天的重点有几个方面: 1.什么是指针 2.数组和指针 3.函数指针 什么是指针 存放变量地址的变量我们称之为“指针变量”,简单的说变量p中存储的是变量a的地址,那么p就可以称为是指针变量,或者说p指向a.当我们访问a变量的时候其实…
///////////////////////const 指针的三种状态///////////////////// 注意:const 的前后顺序 const 在类型之前 ---可以修改指针包含的地址,不能修改指针指向的值 const 在变量之前类型之后 ---可以修改指针的指向值,不能修改指针地址 // 1.指针指向的数据为常量,不能修改,但是可以修改指针包含的地址 /*int HoursInDay = 24;const int* pInteger = &HoursInDay; cout<&…