语法:
#include <stdio.h>
int scanf(const char *format, ...);
解析:
scanf()函数根据给定的格式从STDIN中读取输入,把数据存储到其他参数中。
它的工作方式和printf()函数很像,格式串包含控制字符,空白字符和非空白字符,
控制字符前面都有一个‘%‘符号。就像下面这样:
控制字符 解释
%c 一个字符
%d 一个十进制整数
%i 一个整数
%e,%f,%g 一个浮点数
%o 一个八进制数
%s 一个字符串
%x 一个十六进制数
%p 一个指针
%n 一个和目前为止接收到的字符数相等的整数
%u 一个无符号整数
%[] 一组字符
%% 一个‘%‘符号
scanf()根据格式串来匹配输入。当一个控制字符完成读取后,它会把值放进下一个变量中。
空白字符(tabs, spaces, 等)会被跳过。非空白字符会和输入匹配,然后被丢弃。
如果‘%‘和控制字符之间有一个数字,那么相应数量的字符将被转化到变量之中。
如果scanf()碰到一组以“%[]”格式来表示的字符,那么任何"[]"之间的字符将被读进变量之中。
scanf()的返回值是成功读取到的变量的个数,如果出错,则返回EOF。
scanf解析
原文:http://blog.csdn.net/chang_mu/article/details/19482611