ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

C语言基础——常量

C语言基础——常量 1.常量的定义常量指在程序运行过程中其值不能被改变的量。2.整型常量例1230341八进制0xa3d十六进制注①二进制数无法正常打印10011001(因为编译器会将其当成十进制10011001)②二进制不能直接表示③八进制标记是0十六进制标记为0x3.浮点常量-1234.5678 1.3e41.3*10^4注1.3425e-5表示科学计数法1.3425 * 10^(-5)4.字符常量 ASCII表注①字符常量必须使用单引号括起来。②每一个字符常量的单引号中也只能有一个字符并且在一定范围内字符和数字可以互换。③字母字符‘A V b y; 数字字符2 7 0; 转义字符\n \t注意八进制字符最多三位十六进制字符需要待标记x最多两位。④特殊字符\\\ %%在printf中输出%时需要使用%%\45表示输出八进制数45对应的数字或字符最多三位\xac表示输出十六进制数ac对应的数字或字符最多两位如图其会输出ASCII表对应的字符其中‘\45’代表的是八进制45对应的字符即十进制37对应的字符为%同样\x25代表的是十六进制25对应的字符即十进制37对应的字符为%。5.字符串常量“12345okjbv555”注①字符串常量必须使用双引号。②字符串常量以\0结束但是’\0不在字符串中显示并且只有一个字节大小。字符串常量的两种使用方式const char * a hello world; char a[20] hello world;此处在char *a前面添加上了const的原因在于a指向的是只读的字符串面量如果在后续的运行中不小心修改了它a[0] H程序会在运行时奔溃因此在此处添加const是避免其在后续被修改。\*笔试题*“a和‘a存在什么区别7.标识常量--宏格式#define 宏名 被替换内容注:①#define在宏定义中必须添加。②宏名符合标识符命名规则一般默认大写区分变量名。③被替换内容 可以是常量、变量、表达式、数据类型、字符串等。④宏定义表示常量属于单纯替换。⑤可以写在函数内部但是一般写到函数之外表示整个工程都可以使用。宏函数类似于函数的功能可以提高运行效率。格式#define 宏函数名 形参列表替换表达式注 ①宏函数可以代替大量重复代码符合一般函数的使用。②宏函数名符合标识符命名规则。③形参列表表示需要带入宏函数的信息入口没有数据类型使用“”分隔④函数体 符合语句操作如果宏函数体是单纯的表达式末尾不需要添加“”。如果宏函数体里面包含语句如do{……}while0时需要添加“”。在宏函数体中换行时需要使用这行符“\,即使出现空行也需要使用折行符。⑤宏函数调用格式宏函数名 实参Ⅰ.实参可以是常量、变量、表达式。Ⅱ.要求实参个数必须和形参对应以,间隔并确定个数。附本人是新人作者文章内容可能出现错误请各位大佬指出错误。大家在后续的学习中会发现关于数据类型的方面还有很多涉及所以大家尽量把基础打牢固后面学起来才更轻松。
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进