整型数据和字符串数据相互转化代码
2017-04-10 10:21
393 查看
//将整型转化为字符串
void itoa(int n, char *ch, int *len) {
if(n < 10 && n >= 0) {
ch[(*len)++] = (char)(n + '0');
} else {
itoa(n / 10, ch, len);
ch[(*len)++] = '0' + n%10;
}
}
其中的参数解释为:n为要转化的整型数据,ch为转化后的字符串首地址,len为一个等于零的int型数据。
//将字符串转化为整型数据返回
int char_to_int(char *name) {
int i = 0, a = 0, len, value, j;
len = strlen(name);
while(name[i] != 0) {
value = name[i] - '0';
for(j = 1; j < len - i; j++) {
value *= 10;
}
a += value;
i++;
}
return a;
}
其中的参数解释为:name为要转化的字符串的首地址,该函数返回转化好的int型数据。
当然char_to_int()函数在系统里面有定义,可以直接使用,只要加上头文件就可以了。
也可以借助sscaf()和sprintf()进行转化:
以前还没有见过sscanf()函数,现在明白了,我小结一下:
若想用read()读取文件中的整型数据时可以借助sscanf()进行操作,假如我有一个sun文件,里面是87192,可以执行下面的程序进行测试:
#include
#include
#include
#include
int main(void)
{
int a, fd;
char ch[20], ch1[20];
fd = open("sun", O_RDONLY);
read(fd, ch, 20);
sscanf(ch, "%d", &a);
sprintf(ch1, "%d", a);
printf("(int a) = %d,(char ch1[]) = %s\n", a, ch1);
close(fd);
return 0;
}
结果是:
(int a) = 87192,(char ch1[]) = 87192;
说明:上面用到了sscanf()和sprintf()函数。
<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
阅读(3960) | 评论(0) | 转发(0) |
0
上一篇:使用优盘装系统
下一篇:有趣的随机数
相关热门文章
test123
编写安全代码——小心有符号数...
彻底搞定C语言指针详解-完整版...
使用openssl api进行加密解密...
一段自己打印自己的c程序...
linux dhcp peizhi roc
关于Unix文件的软链接
求教这个命令什么意思,我是新...
sed -e "/grep/d" 是什么意思...
谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
评论热议
void itoa(int n, char *ch, int *len) {
if(n < 10 && n >= 0) {
ch[(*len)++] = (char)(n + '0');
} else {
itoa(n / 10, ch, len);
ch[(*len)++] = '0' + n%10;
}
}
其中的参数解释为:n为要转化的整型数据,ch为转化后的字符串首地址,len为一个等于零的int型数据。
//将字符串转化为整型数据返回
int char_to_int(char *name) {
int i = 0, a = 0, len, value, j;
len = strlen(name);
while(name[i] != 0) {
value = name[i] - '0';
for(j = 1; j < len - i; j++) {
value *= 10;
}
a += value;
i++;
}
return a;
}
其中的参数解释为:name为要转化的字符串的首地址,该函数返回转化好的int型数据。
当然char_to_int()函数在系统里面有定义,可以直接使用,只要加上头文件就可以了。
也可以借助sscaf()和sprintf()进行转化:
以前还没有见过sscanf()函数,现在明白了,我小结一下:
若想用read()读取文件中的整型数据时可以借助sscanf()进行操作,假如我有一个sun文件,里面是87192,可以执行下面的程序进行测试:
#include
#include
#include
#include
int main(void)
{
int a, fd;
char ch[20], ch1[20];
fd = open("sun", O_RDONLY);
read(fd, ch, 20);
sscanf(ch, "%d", &a);
sprintf(ch1, "%d", a);
printf("(int a) = %d,(char ch1[]) = %s\n", a, ch1);
close(fd);
return 0;
}
结果是:
(int a) = 87192,(char ch1[]) = 87192;
说明:上面用到了sscanf()和sprintf()函数。
<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
阅读(3960) | 评论(0) | 转发(0) |
0
上一篇:使用优盘装系统
下一篇:有趣的随机数
相关热门文章
test123
编写安全代码——小心有符号数...
彻底搞定C语言指针详解-完整版...
使用openssl api进行加密解密...
一段自己打印自己的c程序...
linux dhcp peizhi roc
关于Unix文件的软链接
求教这个命令什么意思,我是新...
sed -e "/grep/d" 是什么意思...
谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
评论热议
相关文章推荐
- 整型数据与字符串类型相互转化的一种实现方法
- 不用库函数进行字符串和整型数据的相互转换
- 整型和字符串的相互转化
- PHP之将POST数据转化为字符串的实现代码
- Java字符串数据与整型数据相互转换
- objective c 整型和字符串相互转化
- 字符串与二进制数组相互转化(数据加密原理)
- 字符串和基本数据类型之间的相互转化
- MFC中CString类字符串与长整型、浮点型数据之间的相互转换
- 将数字字符串转化成整型数据
- Java List或Map对象和json字符串数据的相互转化
- json数据与字符串的相互转化
- java 二进制数据与16进制字符串相互转化
- 数据库中数据循环转化为字符串显示出来代码
- 程序目的:实现c++整型和字符数组,字符串的相互转化
- json数据与字符串相互转化的例子
- SQL自定义函数实现字符串截取转化为整型(主要用于对批量数据的操作)
- java 二进制数据与16进制字符串相互转化方法
- 8.1.3 字符串与基本数据的相互转化
- objective c 整型和字符串相互转化