char类型数组有两种输出方法
1.for循环输出
char arr[] = { 'a','b','c','d','e','f','g' }; for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) { printf("%c", arr[i]); }
2.字符串输出(即把字符型数组当成字符串)
char arr[] = { 'a','b','c','d','e','f','g','\0'}; printf("%s", arr);
值得注意的是,使用第二种方法时,要在数组末端加上‘\0’,因为字符串输出时需要检测‘\0’,检测到‘\0’的停止输出,若没有‘\0’则会出现乱码,运行结果如下:
补充:字符型数组也可以存储整型数字,输出时会将整型数字当成ASCII码,并转换为相应的字符
当字符型数组存储整型数字时,使用字符型输出,数组末端加上0,因为‘\0’的ASCII码就是0
char arr[] = { 73, 32, 99, 97, 110, 32, 100, 111, 32, 105, 116 , 33, 0 }; printf("%s", arr);