C语言sprintf和sscanf函数用法
以前刚用C语言的时候,觉得字符串很难处理,后来用多了,发现其实并非如此,C语言也提供了许多函数给程序员使用。今天记录一下两个常用的两个字符串处理函数:sprintf和sscanf
1. sprintf
从名称上来看,这个函数名称由三部分组成:
- s 代表字符串(string)
- print 代表打印
- f 代表格式化(format)
这样拆分,可以大概知道它是干嘛用的了,相对于我们常用的用来处理输出流的printf,sprintf是用来处理字符串的。实际上这个函数,是把数据按格式打印到字符串中,常用于将数字转换成字符串。
sprintf函数所在头文件:stdio.h
函数原型
int sprintf ( char * str, const char * format, ... );
- str 用来存储结果的内存的指针
- format 格式化规则
例子
将数字转换成字符串
#include <stdio.h>
#include <string.h>
int main(void){
int n=90;
char buf[3];
memset(buf,'a',3);
sprintf(buf,"%d",n);
printf("This string is : %s",buf);
return 0;
}
输出:
This string is : 90
注:转换成字符串以后,会自动在字符串结尾插入'\0',所以要注意第一个参数的内存长度
2. sscanf
从名称上来看,这个函数名称由三部分组成:
- s 代表字符串(string)
- scan 代表扫描
- f 代表格式化(format)
这样拆分,可以大概知道它是干嘛用的了,相对于我们常用的用来处理输入流的scanf,sscanf是用来处理字符串的。实际上这个函数,是将字符串中的内容按格式扫描到变量中,常用于将字符串转换成数字。
sscanf函数所在头文件:stdio.h
函数原型
int sscanf ( const char * s, const char * format, ...);
- s 指定被扫描的字符串
- format 格式化规则
例子
把字符串转换成数字
#include <stdio.h>
int main(void){
const char* str="90";
int num;
sscanf(str,"%d",&num);
printf("This number is : %d",num);
return 0;
}
输出:
This number is : 90
C语言sprintf和sscanf函数用法的更多相关文章
- C语言sprintf与sscanf函数
1.前言 我们经常涉及到数字与字符串之间的转换,例如将32位无符号整数的ip地址转换为点分十进制的ip地址字符串,或者反过来.从给定的字符串中提取相关内容,例如给定一个地址:http://www.bo ...
- C语言sprintf与sscanf函数[总结]
sprintf函数 sprintf函数原型为 int sprintf(char *str, const char *format, ...).作用是格式化字符串,具体功能如下所示: (1)将数字变量转 ...
- php中sprintf与printf函数用法区别
下面是一个示例:四舍五入保留小数点后两位 代码如下 复制代码 <?php$num1 = 21;echo sprintf("%0.2f",$num1)."<b ...
- sscanf函数用法详解
sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: Int sscanf( string str, string fmt, mixed var1, mixed var2 ... ...
- 【转】sscanf函数用法实例
sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: Int sscanf( string str, string fmt, mixed var1, mixed var2 . ...
- R 语言assign 和get 函数用法
assign函数在循环时候,给变量赋值,算是比较方便 1.给变量赋值 for (i in 1:(length(rowSeq)-1)){ assign(paste("nginx_server_ ...
- sscanf函数
sscanf函数用法举例 #include <stdio.h> #include <string.h> #define N 512 int main() { char buf[ ...
- C语言函数sscanf()的用法
从文件读取数据是一件很麻烦的事,所幸有sscanf()函数. C语言函数sscanf()的用法 sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: int sscanf( st ...
- C语言函数sscanf()的用法(转)
转自:http://www.cnblogs.com/lyq105/archive/2009/11/28/1612677.html C语言函数sscanf()的用法 sscanf() - 从一个字符串中 ...
随机推荐
- Scala编程入门---Map与Tuple
创建Map //创建一个不可变的Map val ages = Map("Leo" -> 30,"Jen" ->25,"Jack" ...
- 五年级--python函数高级运用
一.装饰器 二.迭代器 三.生成器 四.练习 一.装饰器 1.1 闭包函数用法 # 需求: # 执行一个函数前需要认证是否登录,如果登录则不需再登录. # 只认证一次,后续操作无需认证 # 要求认证使 ...
- bootstrap-table 列宽问题解决
<th style="width:120px" data-field="Cel1"><div class="th-inner &qu ...
- SSM-Spring-20:Spring中事务基础
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 事务 事务是什么? 我记得当初的百度百科上讲,事务是执行的最小逻辑单元,它们要么都执行,要么都不执行 (同生共 ...
- ZooKeeper的使用---命令端
一.进入命令行 ./bin/zkCli.sh 二.常用命令 命令 作用 范例 备注 connect host:port 连接其他zookeeper客户端 connect hadoop2:21 ...
- Debian9桌面设置
本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=665 新安装的Debian9桌面上啥都没有,就像这样: 图 1 虽然很简洁,但是用着不是很方便,下面我们就通过一些设 ...
- Whitelabel Error Page 专题
Spring boot为错误视图提供了如下错误属性:timestamp:错误发生的时间status:HTTP状态码error:错误原因exception:异常的类名message:异常消息(如果这个错 ...
- jmeter利用自身代理录制电脑脚本(一)
在利用代理录制脚本时一定要安装java jdk,不然不能录制的. 没有安装过java jdk安装jmeter后打开时会提示安装jdk,但是mac系统中直接打开提示安装jdk页面后下载的java并不是j ...
- 你不知道的JavaScript--Item18 JScript的Bug与内存管理
1.JScript的Bug IE的ECMAScript实现JScript严重混淆了命名函数表达式,搞得现很多人都出来反对命名函数表达式,而且即便是现在还一直在用的一版(IE8中使用的5.8版)仍然存在 ...
- 你不知道的JavaScript--Item16 for 循环和for...in 循环的那点事儿
大家都知道在JavaScript中提供了两种方式迭代对象: for 循环: for..in循环: 1.for循环 不足: 在于每次循环的时候数组的长度都要去获取: 终止条件要明确: 在for循环中,你 ...