C语言的常量,字符串,转义字符,注释你都了解吗

Emily ·
更新时间:2024-11-14
· 1535 次阅读

目录

四种常量:

字符串:

转义字符

注释

总结

四种常量:

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 可以注释一行也可以注释多行 

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注软件开发网的更多内容! 



常量 字符串 转义 C语言 字符

需要 登录 后方可回复, 如果你还没有账号请 注册新账号