C语言中%c与%s的区别与划分详解
在C语言中,%c
和%s
是格式化输出的常见控制字符,这两个字符在使用时有所不同。
%c的用法
%c
表示输出一个字符,一般和变量类型char
搭配使用。在使用%c
输出时,必须提供一个字符型参数。
以下是一个示例:
#include <stdio.h>
int main() {
char letter = 'a';
printf("%c\n", letter);
return 0;
}
输出结果为:
a
当提供的参数为整型变量时,转换后只会输出字符的低八位,例如:
#include <stdio.h>
int main() {
int letter = 98;
printf("%c\n", letter);
return 0;
}
输出结果为:
b
%s的用法
%s
表示输出一个字符串,一般和字符数组搭配使用。在使用%s
输出时,必须提供一个字符数组的地址。
以下是一个示例:
#include <stdio.h>
int main() {
char str[] = "Hello, World!";
printf("%s\n", str);
return 0;
}
输出结果为:
Hello, World!
如果忘记给字符数组的最后一位赋值为结束标记\0
,则输出结果会非常严重。例如:
#include <stdio.h>
int main() {
char str[] = "Hello, World!";
str[7] = 0; // 删除字符数组中的逗号
printf("%s\n", str);
return 0;
}
输出结果为:
Hello,
因为程序只会输出到第一个\0
结束标记的位置,而\0
在这个字符数组中并不在正确的位置。
总结
%c
与%s
的用法是不同的,应该慎重使用。在使用%s
输出字符串时,一定要记得给字符数组的最后一位赋值为结束标记\0
。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言中%c与%s的区别与划分详解 - Python技术站