sprintf()与sscanf()
1、sprintf()
sprintf()用于向字符串中写入格式化的数据,eg:
int dSrc1 = 1;
int dSrc2 = 2;
char str[] = "hello";
char buf[100] = { 0 };
sprintf_s(buf, (unsigned)_countof(buf), "%4d,%4d,%s", dSrc1, dSrc2, str);
cout << buf << endl; //输出为 1, 2,hello
_countof:用来计算一个静态分配的数组中的元素的个数,sizeof是用来计算字节数,所需头文件stdlib.h
2、sscanf()
sscanf()用来从字符串中读取格式化的数据到变量或字符数组中,eg:
char*p = "1234abcd";
char buf1[100] = { 0 };
sscanf_s(p, "%s", buf1, (unsigned)_countof(buf1));
cout << buf1 << endl; //输出为1234abcd
char buf2[100] = { 0 };
sscanf_s(p, "%4s", buf2, (unsigned)_countof(buf2));
cout << buf2 << endl; //输出为1234
char strSrc[] = " 1, 2,hello";
int dDest1;
int dDest2;
char buf3[100] = { 0 };
sscanf_s(strSrc, "%4d,%4d,%s", &dDest1, &dDest2, buf3, (unsigned)_countof(buf3));//dDest1:1, dDest2:2, strDest:"hello"
cout << dDest1 << ", " << dDest2 << "," << buf3 << endl;//输出1, 2, hello
sprintf()与sscanf()的更多相关文章
- C语言sprintf和sscanf函数用法
以前刚用C语言的时候,觉得字符串很难处理,后来用多了,发现其实并非如此,C语言也提供了许多函数给程序员使用.今天记录一下两个常用的两个字符串处理函数:sprintf和sscanf 1. sprintf ...
- C语言sprintf与sscanf函数
1.前言 我们经常涉及到数字与字符串之间的转换,例如将32位无符号整数的ip地址转换为点分十进制的ip地址字符串,或者反过来.从给定的字符串中提取相关内容,例如给定一个地址:http://www.bo ...
- 字符与数字的转换:sprintf和sscanf
目录 字符与数字的转换:sprintf和sscanf 简单介绍 实例 运行结果 字符与数字的转换:sprintf和sscanf 简单介绍 sprintf和sscanf都是stdio.h头文件中的函数, ...
- 使用stringstream代替sprintf和sscanf
C++里面的字符串格式话 之前一直是用的sprintf和sscanf 比较麻烦的是要申请一个字符数组然后在调用 用stringstream就比较完美 int main(int narg,char** ...
- C语言sprintf与sscanf函数[总结]
sprintf函数 sprintf函数原型为 int sprintf(char *str, const char *format, ...).作用是格式化字符串,具体功能如下所示: (1)将数字变量转 ...
- sprintf和sscanf
sprintf 一个可以将输入打印到字符串的函数,用法与printf差不多 可以参考这篇文章: http://blog.csdn.net/masibuaa/article/details/563488 ...
- 浅析C语言中printf(),sprintf(),scanf(),sscanf()的用法和区别
printf语法: #include <stdio.h>int printf( const char *format, ... ); printf()函数根据format(格式)给出的格式 ...
- sprintf与sscanf用法举例
一.sscanf 从tmp中读取a,b,c. int main(){ ]; int a; double b; ]; while(gets(tmp) != NULL){ sscanf(tmp, &quo ...
- sscanf与正则表达式(转)
今天翻google reader的时候看到这样一篇文章,介绍的是sscanf的高级用法.直到今天我才知道sscanf是可以直接用正则表达式的,惭愧. 在msdn中sscanf的声明如下 int ssc ...
随机推荐
- RocketMq --consumer自动实现负载均衡
这边使用一个producer和两个consumer是实现负载均衡. 看一下代码示例 package com.alibaba.rocketmq.example.message.model; import ...
- 联机分析处理ROLAP、MOLAP和HOLAP区别(转)
OLAP(on-Line Analysis Processing)是使分析人员.管理人员或执行人员能够从多角度对信息进行快速.一致.交互地存取,从而获得对数据的更深入了解的一类软件技术.OLAP的目标 ...
- Maven学习笔记(十二)-maven打包之resource配置
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u011781521/article/details/79052725 一.简介 构建Maven项目的 ...
- linux命令学习之:ifup/ifdown
ifup命令网络配置 ifup命令用于激活指定的网络接口.ifdown命令用于禁用指定的网络接口. 实时地手动修改一些网络接口参数,可以利用ifconfig来实现,如果是要直接以配置文件,亦即是在 / ...
- JDBC的学习
JDBC —— 用Java访问数据库 一.需要用到第三方类:mysql-connector-java-5.0.8-bin.jar,并做好导包处理: 二.初始化驱动: 三.建立与数据库的链接: 四.创建 ...
- go语言中container容器数据结构heap、list、ring
heap堆的使用: package main import ( "container/heap" "fmt" ) type IntHeap []int //我们 ...
- HTTP Basic Authentication认证(Web API)
当下最流行的Web Api 接口认证方式 HTTP Basic Authentication: http://smalltalllong.iteye.com/blog/912046 什么是HTTP B ...
- Vue 1.0 和 2.0 执行顺序
// Vue 生命周期 // Vue 1.0 // 执行步骤:选项/生命周期钩子 // 1 init // 2 created // 3 beforeCompile // 4 compiled // ...
- dangerouslySetInnerHTMl
dangerouslySetInnerHTMl 是React标签的一个属性,类似于angular的ng-bind: 听说这个单词这么长,是故意的,应为有可能不合时宜的使用innerHTML会导致XSS ...
- 使用java5的注解和Sping/AspectJ的AOP 来实现Memcached的缓存
使用java5的注解和Sping/AspectJ的AOP 来实现Memcached的缓存 今天要介绍的是Simple-Spring-Memcached,它封装了对MemCached的调用,使MemCa ...