数字转化为字符串,sprintf使用(弱菜笔记)
2012-08-04 12:04
274 查看
注明:以下例程均在code::bolcks(编译器GNU GCC)下运行通过,如果读者不能正确运行,请尝试调整编译器为GNU或GCC。
我们通过几个例子认识sprintf的用法,由此也初窥数字转化为字符串中数据的门径。
最简单直接的方法:一个数字加上0的ASC2码就得到对应字符的ASC2码。
输出:012
更简洁的方法是使用sprintf,“sprintf”可以理解为“打印到字符串的函数”。
输出:12
在上例中,语句
我理解为是将“%d%d”转化为字符串s的内容,而“%d%d”就是“12”。
以下还有一个例子,摘自C++ reference
我们通过几个例子认识sprintf的用法,由此也初窥数字转化为字符串中数据的门径。
最简单直接的方法:一个数字加上0的ASC2码就得到对应字符的ASC2码。
//Example #1 #include <stdio.h> int main() { int a[3]={0, 1, 2}; char s[4]; for(int i = 0; i<3; i++) s[i] = a[i] + '0'; s[3] = '\0'; puts(s); }
输出:012
更简洁的方法是使用sprintf,“sprintf”可以理解为“打印到字符串的函数”。
//Example #2 #include <stdio.h> int main() { char s[10]; int x, y; while(scanf("%d%d", &x, &y) != EOF) { sprintf(s, "%d%d", x, y);//将x,y储存的数据转化为字符串s中的数据 puts(s); } return 0; }输入:1 2
输出:12
在上例中,语句
sprintf(s, "%d%d", x, y);
我理解为是将“%d%d”转化为字符串s的内容,而“%d%d”就是“12”。
以下还有一个例子,摘自C++ reference
//Example #3 #include <stdio.h> int main () { char buffer[50]; int n, a=5, b=3; //建立字符串buffer,n是buffer的长度,包括空格但不包括‘\0’ n=sprintf (buffer, "%d plus %d is %d", a, b, a+b); printf ("[%s] is a %d char long string\n",buffer,n); return 0; }输出:[5 plus 3 is 8] is a 13 char long string
相关文章推荐
- 数字转化为字符串,sprintf使用(弱菜笔记)
- js关键字typeof和instanceof的使用,以及js字符串与数字相互转化
- C++中数字与字符串之间的转换(使用CString.Format或者sprintf)
- 关于字符串中数字字符转化为数字 sscanf的使用以及strchr的使用
- 字符串转化为数字(不使用库函数)
- 将一串数字转化为中文字符串,使用 C# 将数字转换成大写人民币 (例如:用户输入2300,系统就会显示两千三百元 )
- Python 使用map()和reduce() 函数将带小数点的字符串数字转化成小数
- 【学习笔记】关于数字转化为字符串,字符串转化为数组。
- 关于字符串中数字字符转化为数字 sscanf的使用以及strchr的使用
- 开源polarssl加密库使用详解之一:十六进制字符串转化为十六进制数字
- PHP 学习笔记 - - - 简单方法的使用 (字符串与数字)
- 将数字转化为字符串——sprintf (可用于linux下)
- 不使用库函数将字符串转化为数字 实现
- matlab sprintf 数字转成字符串
- 将字符串或者数字转化成英文格式输出
- c++中stringstream 类的用法及字符串与数字之间转化
- C#学习笔记--引用类型分类,对象类型、字符串类型、数字类型,类型转换
- Accelerated C++学习笔记2—<使用字符串>
- ES6新特性学习笔记—数字、数组、字符串
- JAVA字符串转化为数字(可以适合大部分)