linux c打印字符串全部内容,linux C 打印错误信息和标准输入输出详细介绍

Linux 使用strerror 和 perror 函数来打印响应的错误信息 ,这两个函数的标准调用格式说明如下:

#include

char *strerror(int errnum)

#include

void perror(const char *msg)

strerror函数的返回值是一个指向消息字符串的指针,这个消息字符串即为出错信息的字符串

perror函数没有返回值,其输出如下:

“由msg指针指向的字符串” + “:” + errno + “回车换行”

#include

#include

#include

int main(int argc, char *argv[])

{

printf("EACCES:%s\n", strerror(EACCES));//打印没有权限错误信息

errno = EHOSTDOWN;//EHOSTDOWN 服务器关闭

perror(argv[0]);

return 0;

}

300b57c621fbc906338ea7bd568bacf9.png

标准输入输出函数

标准输出函数

printf函数用于将格式化数据输出,其标准调用格式如下:

#include

printf(const char *format, …);

其参数是format是一个字符串,包含字符,字符序列,和格式说明,其中字符部分与字符序列按顺序输出,而格式说明以”%”开始,格式说明是跟随的相同序号数据按格式说明转换和输出.

printf函数的格式说明结构为:%flags_width.precicion_{b|B|l|L}_type

type:用来说明参数是字符串,字符,数字或者指针字符

printf函数的type参数

type

输出结果

D

有符号十进制数

U

无符号十进制数

O

无符号八进制数

x

无符号十六进制数,使用小写

X

无符号十六进制数,使用大写

f

格式为[-]ddd.ddd的浮点数

e

格式为[-]ddde+dd的浮点数

E

格式为[-]dddE+dd的浮点数

g

使用f或者e中比较合适形式的浮点数

G

使用f或者E中比较合适形式的浮点数

c

单字符常数

s

字符串常数

p

指针

n

无输出但在下一参数所指整数中写入字符串

%

”%”字符

b,B,l,L用于type之前,说明整型d,i,u,o,x,X的char或者long转换

flags是标志

printf函数flags参数

flags

作用

-

左对齐

+

有符号,数值总是以正负号开始

空格

数字总是以符号或者空格开始

*

忽略

width是域宽

precision精度,对于不同类型的意义不同,可能引起结尾或者舍入

printf函数的precision精度

数据类型

说明

d,u,o,x,X

输出数字的最小位,输出数字超出也不截断尾 ,如果超出在左边,则填入0

f,e,E

输出数字的小数位,末位四舍五入

g,G

输出数字的有效位

c,p

无影响

s

输出字符的最大字符数,超出部分将不显示

标准输入函数

scanf函数用于用户向程序输入数据,其调用格式如下:

#include

scanf(const char *format,...)

示例:

#include

int main(int argc,char *argv[])

{

char str[30];

printf("输入一个字符串\n");

scanf("%s", str);//输入一个字符串

printf("str=%s\n",str);//打印字符串

int a = -128;

printf("%d\n", a);//打印有符号整数

printf("%u\n", a);//打印无符号整数

int b = 10;

printf("%x\n", b);//打印16进制数,小写

printf("%X\n", b);//打印16进制数,大写

float c = 1.221121;

printf("%f\n", c);//打印浮点数

printf("%-.3f\n", c);//打印有效位数为3,左对齐的浮点数

return 0;

d65992fc3c9e808d576a56063831f8b9.png

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值