C语言学习-翁凯(第十三章笔记)
C语言-第十三章
13.1.1 格式化输入输出
格式化输入输出
- printf
%[flags][width][.prec][hIL]type
- scanf
%[flag]type
printf: %[flags][width][.prec][hIL]type
Flag | 含义 |
---|---|
- | 左对齐 |
+ | 在前面放+或- |
(space) | 正数留空 |
0 | 0填充 |
width或prec | 含义 |
---|---|
number | 最小字符数 |
* | 下一个参数是字符数 |
.number | 小数点后的位数 |
.* | 下一个参数是小数点后的位数 |
类型修饰 | 含义 |
---|---|
hh | 单个字节 |
h | short |
l | long |
ll | long long |
L | long double |
type | 用于 | type | 用于 |
---|---|---|---|
i或d | int | g | float |
u | unsigned int | G | float |
o | 八进制 | a或A | 十六进制浮点 |
x | 十六进制 | c | char |
X | 字母大写的十六进制 | s | 字符串 |
f或F | float,6 | p | 指针 |
e或E | 指数 | n | 读入/写出的个数 |
scanf: %[flag]type
flag | 含义 | flag | 含义 |
---|---|---|---|
* | 跳过 | l | long,double |
数字 | 最大字符数 | ll | long long |
hh | char | L | long double |
h | short |
[^.]
- //$GPRMC,004319.00,A,3016.98468,N,12006.39211,E,0.047,130909,D*79
scanf("%*[^,],%[^,],%[^,],%[^,],%[^,],%[^,],%[^,],%[^,],%[^,],%[^,]",sTime,sAV,sLati,&sNW,sLong,&sEW,sSpeed,sAngle,sDate);
printf和scanf的返回值
- 读入的项目数
- 输出的字符数
- 在要求严格的程序中,应该判断每次调用scanf或printf的返回值,从而了解程序运行组是否存在问题
13.1.2 文件输入输出
文件输入输出
- 用>和<做重定向
FILE
FILE* fopen(cons