下面介绍几个常用的字符串输出函数,以及他们的相关事项。
对于初学者来说,字符串输出一般都是输出到显示器上。刚开始接触的输出函数就是printf()了,它是stdout,刚开始学习的时候它的作用是提示还有打印结果,看看自己的程序有无出错,平时用来debug查找错误。printf()调用格式为printf("<格式化字符串>", <参量表>),printf()主要是打印多个字符串比较简单,注意事项是转换说明与参量表中的变量需要对应,当然也可以个性化修饰,记住常用的修饰符就行。下面做了一个表,都是常用的。
转化说明 | 输出 | 对应参量表类型 |
---|---|---|
%c | 单个字符 | char |
%d | 有符号十进制整数 | int |
%e | 浮点数,e记数法 | float |
%f | 浮点数,十进制计数法 | float |
%p | 指针 | |
%s | 字符串 |
修饰符 | 含义 |
---|---|
数字 | %5d,数字5代表最小字段宽度为5 |
.数字 | %.2f,.2表示小数点后有两位数字,是精度 |
h | %hd,表示为unsigned short int |
L | %lf,表示long double类型 |
- | %-s,负号代表从字段左侧开始打印 |
+ | %+3.5f,有符号值为正值 |
puts()使用非常方便,只需要把我们的字符串地址作为参数传递给他就行,比如
char *str = "this is a string";
puts(str);
注意的是puts()里面的是地址,然后地址上存储的值是字符串,需要以'\0'结尾,我们存储字符串时是通过一段连续的内存,然后每个都是char类型字符,所以遇到下面这种情况
char str[10] = {'s','t','r'};
puts[str];
此时因为字符里面没有'\0'结尾,puts()是不知道在哪停的,它会在str之后继续在接下来连续的内存上输出值,直到遇到'\0'
fputs()的用法是fputs(const char str, FILE stream),第一个仍然是指向char类型的指针,第二个是输入文件。如果是打印在显示器上就用stdout就行,它与puts()不同之处在于fputs()不会在末尾添加换行符。
fputs()与fgets()搭配使用,gets()与puts()搭配使用。这样使用的结果是我们打印出来的都会换行,但是不会有空行的情况出现。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。