四种常量:
1.字面常量
如数字100,‘a’
2.const修饰的常变量
const int n = 10 //常变量而非常量 不能用 int a【n】={1,2,3}定义数组
3.define定义的标识符常量
#define NUM 100 //NUM是define定义的常量
4.枚举常量:
生活中有些取值可以一一列举的如:
性别:男,女,保密
星期:1,2,3,4,5,6,7
//创建一种枚举类型 - #include <stdio.h>
- enum Sex
- {
- //枚举类型Sex的三个可能取值 -枚举常量
- MALE, //0
- FEMALE, //1
- SECRET //2
- };
- int main()
- {
- enum Sex sex = FEMALE;
- //MALE = 2; //err
- printf("%d\n", MALE); //0
- printf("%d\n", FEMALE); //1
- printf("%d\n", SECRET); //2
- return 0;
- }
复制代码 字符串:
由双引号括起来的一串字符就是字符串 如:"abc"、"a"、 "" //空字符串
注:字符串的结束标志是一个\0的转义字符,在计算字符串长度的时候 \0 是结束标志,不算作字符串内容。 - #include <stdio.h>
- //突出'\0'的重要性
- int main()
- {
- char arr1[] = "abcdef";
- char arr2[] = {'a', 'b', 'c','d','e','f'};
- char arr3[] = {'a', 'b', 'c','d','e','f','\0'};
- //%s 是打印字符串
- printf("%s\n", arr1); //abcdef
- printf("%s\n", arr2); //abcdef烫abcdef
- printf("%s\n", arr3); //abcdef
- return 0;
- }
复制代码- #include <stdio.h>
- #include <string.h>
- //说明'\0'不算作字符串内容
- int main()
- {
- char arr1[] = "abcdef";
- printf("%d\n", strlen(arr1)); //6
- //strlen - string length - 字符串长度 需要头文件<string.h>
- char arr2[] = {'b','i','t'} ;
- printf("%d\n", strlen(arr2)); //10 缺少\0输出值是随机值
- return 0;
- }
复制代码 转义字符
- #include <stdio.h>
- int main()
- {
- //问题1:在屏幕上打印一个单引号',怎么做?
- //问题2:在屏幕上打印一个字符串,字符串的内容是一个双引号“,怎么做?
- //问题3:在屏幕上打印 c:\code\test.c\n,怎么做?
- printf("%c\n", '\''); //'
- printf("%s\n", """); //"
- printf("c:\\code\\test.c\n"); //c:\code\test.c\n
- return 0;
- }
复制代码 特殊的转义字符:
\ddd:ddd表示1~3个八进制的数字。 如: \130 X
注:\ddd 最多只支持三位数字,并且三位数字也不是任意的,一旦大于等于八进制数 '/400 '(十进制256=8进制400) 就超过了ascall码的范围,编译器就会报错。另外大于三位,或者遇到非八进制数字时则转换结束,直接取末尾数字。
面试题: 需注意\后的三个数字超出400和三个数字中有超过7的数字的情况- #include <stdio.h>
- #include <string.h>
- int main()
- {
- printf("%d\n", strlen("abcdef"));
- // \62被解析成一个转义字符
- printf("%d\n", strlen("c:\test\628\test.c")); //14
- return 0;
- }
复制代码\xdd:dd表示2个十六进制数字。 如: \x5F //
注释
注释有两种风格:
C语言风格的注释 /*xxxxxx*/ 缺陷:不能嵌套注释
C++风格的注释 //xxxxxxxx 可以注释一行也可以注释多行
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注晓枫资讯的更多内容!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |