在C语言程序中,经常使用数据文件存储程序所需的数据。数据文件分为文本文件和二进制文件两类。文本文件的实质是一个个字符所组成的,简单的说就是用ASCII码进行存储,这样的文档易于储存与修改。二进制文件相对来说在C语言中操做起来比较方便,本质上是数据内存的隐射。
下面我们对文本文件进行具体分析:
如何将文本中的字符转化为ASCII码呢?
一.将字符转化为ASCII码
我们首先应该明白文本文件中字符和其对应的ASCII码是等价的,即字符的整数形式就是其ASCII码。在了解了这一点后我们就可以很容易的将其向ASCII码转化了。
#include<stdio.h>
#include<string.h>
int main()
{
char str[100];
int n,i;
printf("input a string:\n");
gets(str);
for(i=0;i<strlen(str);i++) //由于strlen返回的是一个无符号数,用无符号数unsigned int i比较就不会不产生警告了
{
n=str[i]; //将字符转化为相应的ASCII码
printf("%d ",n);
}
return 0;
}
二.将整型数转换成合法的ASCII 码
调用包含在头文件ctype里面的toascii函数
调用形式:toascii(int i) //将转换成功的ASCII码值返回
原理:toascii函数会将参数c转化为7位的unsigned char值,第八位则会被清除,此字符则会被转化为ASCII码字符。
#include<stdio.h>
#include<ctype.h>
int main()
{
int a=217;
char b;
printf("befor toascii : %d %c\n",a,a);
b=toascii(a);
printf("after toascii : %d %c\n",b,b);
return 0;
}
以上就是两种将对应整数或者字符转化为ASCII码的常见方法