标准IO
之后会将标准io和系统io做一个对比。
-
格式化输入输出函数:scanf、printf
scanf:
printf函数原型:
int printf(const char *format,...);
format:"%[修饰符]格式字符"
修饰符可以类比linux中的echo命令的一些格式化选项
注1:使用标准io经常用来调试程序,其中可能经常用到的宏:_FUNCTION_:当前函数名。_LINE_:当前执行的行号
注2:prtinf函数在数据列表之后经常要加换行符:\n,该换行符有刷新行缓冲区的意思,即flush到标准输出中,否则可能会出现printf的数据存入缓冲区而没有立即输出到标准输出的情况(只有缓冲区满,或执行exit(0)才会刷新,这已经是程序结束的时候了)。后面我们也会提到可以手动强制刷新缓冲区,跟java类似。
scanf:
scanf函数原型:
int scanf(const char *format,地址表);
scanf没有修饰符,即限制了用户的输入格式
scanf函数即从程序读入用户的输入,读到什么地方呢,scanf规定你需要通过指针进行接收,所以如果你声明了变量int i,那么scanf函数中的第二个参数就是&i。下面是示例程序:
- 字符输入输出函数:getchar,putchar
- 字符串输入输出函数:gets(危险),puts