三、输入输出专题
input & output --> I/O(标准IO,文件IO)
1、格式化输入输出函数:scanf,printf
man 3 printf
int printf(const char *format, ...); format: "%[修饰符]格式字符"
USAGE: printf("%[修饰符]格式字符", 输出表项);
标准输出格式字符.bmp
#include <stdio.h>
int main(void)
{
char ch = 65;
printf("%d, %c\n", ch, ch); // 65, A
return 0;
}
标准输出修饰符.bmp
#include <stdio.h>
#define STRSIZE 32
#define SEC_YEAR (60LL*60LL*24LL*365LL) // 使用LL防止整型溢出
int main(void)
{
int i = 123, j = -10;
float f = 123.456;
char str[STRSIZE] = "helloworld";
double d = 1.23456;
long l = 123456L;
/* 修饰符m */
printf("i = %d\n", i); // i = 123
printf("i = %5d\n", i); // i = 123
printf("i = %1d\n", i); // i = 123
/* 修饰符.n */
printf("f = %f\n", f); // f = 123.456001
printf("f = %8.1f\n", f); // f = 123.5
printf("str = %s\n", str); // str = helloworld
printf("str = %.5s\n", str); // str = hello
/* 修饰符- */
printf("str = %10.5s[over]\n", str); // str = hello[over]
printf("str = %-10.5s[over]\n", str); // str = hello [over]
/* 修饰符+ */
printf("i = %+d\n", i); // i = +123
printf("j = %+d\n", j); // j = -10
/* 修饰符0 */
printf("i = %05d\n", i); // i = 00123
/* 修饰符# */
printf("%o, %#o\n", i, i); // 173, 0173
printf("%x, %#x\n", i, i); // 7b, 0x7b
/* 修饰符l */
printf("l = %ld\n", l); // l = 123456
printf("d = %lf\n", d); // d = 1.234560
printf("SEC_YEAR = %llu\n", SEC_YEAR); // SEC_YEAR = 31536000
return 0;
}