c 语言 整理

// const 修饰变量,把变量当做常量来看待,只能读不能写.

//const  修饰谁,谁就不可变

const int *p = &a; //const 修饰 *p, 不能通过指针变量p修改指向空间的内容 ,但是p 可以重指向.

int const *p1  = &a ; //const 修饰 *p1, 不能通过指针变量p修改指向空间的内容 ,但是p 可以重指向. (通过*p1 修改指向空间的内容的权限 被限制)

int * const p2 =  &a; //const 修饰p2 , p2 不可以重指向,但是可以通过p2 修改指向空间的内容. (p2 内存储的地址不可改变,但是可以通过p2 存放的地址,修改地址指向的空间的内容)

const int * const p3 = &a; // const 修饰 p3 以及 *p3 ,p3 不可以重指向,也不可以通过*p3 修改指向空间的内容.

//const 让程序安全.

c 语言 整理,布布扣,bubuko.com

时间: 2024-10-16 20:49:51

c 语言 整理的相关文章

C 语言 整理5

// 函数存在的意义:把main 函数中复杂的逻辑进行拆分,有一个一个单独的函数来处理一个单独的模块,main 函数只起到宏观调控的作用./* 函数的定义 : 包括以下四部分: 1.返回值类型(要返回的数据的类型) 2.函数的名字(给函数起一个名字). 3.参数列表(用来接收传入的数据). 4.函数体(函数真正的功能,实际做的操作).*/ /* 函数格式:1.无参数 无返回值. void函数名命名规范: 有单词组成 ,查了第一个单词外,其他单词的首字母 大写. 工程名命名规范: 有单词组成 ,每

C 语言 整理6

//数组作为参数时,函数调用传入数组名即可 #import "Function.h"int  var = 10; //全局变量,在所有函数中都可以访问.程序运行期间空间不回收. //变量 x y 是在函数内部定义的变量,只能在函数内部有效,在函数之外,就无法访问,所以叫做局部变量,(当函数调用时,为变量开辟空间,当函数结束之后,回收空间.) int maxValue (int x ,int y) //被static 修饰的变量成为静态变量,    //特点: 1.空间值开辟一次,而且在

C 语言 整理7

#import "Struct.h"//导入自定义的头文件时,用 " "  导入系统定义的头文件时 使用 < > //数组作为函数参数在传递时,值填写数组名即可.   // printAllStudentInfo( b ,5); /** *  结构体嵌套,在一个结构体的结构体成员变量是另外一个结构体类型的变量. */ C 语言 整理7,布布扣,bubuko.com

C 语言 整理8

// int  a  = 010 + 10 ;  //0开头是八进制.    //0b 开头是二进制    //0x 开头是十六进制   // printf("%d " ,a ); //%d 打印十进制整数.    //%x 打印十六进制. (字母小写)   %X  打印十六进制 (字母大写)    // %o 打印八进制    //一个字节 又是八位二进制数.            //位运算符    //按位与 & (同为1 , 则为1 , 否则 为0 );       

C 语言 整理9

//定义一个指针变量 , 和定义整型变量类似,也包括三部分:数据类型 变量名 =  初值    //只不过指针变量用来存储地址而已.    //int  * 指针变量类型 , p 指针变量名 , NULL 指针变量初值.    //int  的作用 : 1,当自增时增加几个字节,2,当存取数据时一次性读取几个字节.    // 定义时 , * 告诉编译器,后面的变量是一个指针变量;       int  * p = NULL ;        //指向关系    p = &a;  //将a 的地

C 语言 整理1

//枚举类型是一个构造类型,它使一组整型常量,罗列处理所有的可能性.//定义枚举 使用关键字 enum + 枚举类型的名字 { 枚举值,多个枚举值之间通过使用逗号分隔}: 最后的分号必不可少.//枚举类型将人能够识别的标识符,和计算机能识别的数字对应起来. //if(条件表达式){语句} 当条件表达式的条件成立时,执行大括号内的语句,否则执行if之后的语句. //if(条件表达式) {语句1} else { 语 句2} break;//结束当前分支,跳出switch,执行之后的语句. defau

C 语言 整理2

//for    //<#initialization#> 变量初始化    //<#condition#>循环条件    //<#increment#>//变量增量    //<#statements#>循环体,每次反复执行的内容. //循环变量的名字 先以i,j,k,为主. // while和do while 的区别    //对于while 循环,需要先判断循环条件,然后执行循环体,而对于do while 不管条件是否成立,先执行一次循环体,后判断条件

C 语言 整理 3

//定义一维整形数组    //1,数据类型 2,数组名 3, 中括号中填写元素个数 4,初值 ,赋值时使用大括号,内部为每个变量赋初值,中间应聘哪个逗号分割.    //定义数组时,数组元素的个数只能是常量或者是常量表达式,不能为变量.    //取数组中的元素的时候 , 数组名 + 下标. //数组中元素的下标范围 , 0  到数组元素下标 - 1;   数组所占内存空间的大小 = 数组中每个元素所占空间的大小 * 数组元素个数. //外层循环决定比较的趟数    //内层循环比较每趟比较的

C 语言 整理4

//二维数组的定义和一维数组的定义十分相似,只不过和一维数组多了一维,    //定义数组 : 数组类型 数组名 [行数][列数] =  初值 (多个元素赋初值要加大括号) //二维数组定义时 第一位可以不给,行数可以省略,但是第二维下标必须要指定    //并且第一维下标与第二维下标都必须是常量或者是常量表达式. //字符串数组 , 只不过字符串是存储在一维的字符数组中,所以本质上是一个二维的字符数组. //数组名代表数组的首地址,是一个常量地址,不可被修改. //对字符串进行赋值操作时,要使