sscanf函数学习

来源:互联网 发布:mysql不等于查询 编辑:程序博客网 时间:2024/06/09 14:17

函数原型:

int sscanf(const char *buff, const char *format, [argument]...);

功能介绍:

      sscanf按照格式控制字符串format指示对buff进行解释、转换,并将转换后的数据存储到argument中。argument必须是指针类型。

当格式控制字符串用完时,函数返回。如果在转换输入前出错,函数返回EOF;否则,返回实际被转换并赋值的输入项数目。

   格式控制字符串format通常包含转换说明,它用于指导对buff进行解释。格式控制字符串可以包含下列项目:

  • 空格或制表符
  • 普通字符(不包含%),它将与buff中下一个非空白字符进行匹配
  • 转换说明,由一个%、一个赋值屏蔽字符*(可选)、一个指定最大字符宽度的数(可选)、一个指定目标字段宽度的字符(hlL)(可选)以及一个转换字符组成。
    转换说明决定了下一个输入字段的转换方式。通常结果将被保存在由对应参数指向的argument中。但是,如果转换说明中包含复制屏蔽字符*,例如%*s,则将跳过对应的的输入字段,并不进行赋值。输入字段是一个由非空白字符组成的字符串,当遇到下一个空白字符串、或达到指定的最大字符宽度(如果有的话)时,对当前输入字段的解析结束。

转换字符说明了对输入字段的解释方式,对应的参数必须是指针。合法的转换字符如下:

d十进制整数;对应参数类型int *

i整型数;对应类型int*。该整形数可以是十进制整数(不能以0开头)、八进制数(以0打头)或十六进制数(以0x0X头);

--------未完,待续



0 0
原创粉丝点击