对于只认识0和1的机器来说是无法直接识别字符及汉字的。将ASCII表的高128个很少用到的数值以两个为一组来表示汉字,即汉字的内码。而剩下的低128位则留给英文字符使用,即英文的内码。如下程序所示:
#include<stdio.h>
void main()
{
unsigned char *s,*e,*c;
char *c2,*c3,*c4;
c2 = "王新征";
c4 ="你好";
e = "abc ABC";
c = "你好";
// 输出英文字符及空格ASCII码
s = e;
printf("输出英文字符及空格内码\n");
while(*s != 0)
{
printf("%3d",*s);
s++;
}
printf("\n将unsigned char转为char后输出\n");
// 将unsigned char字符串转为char字符串
printf("%s\n",(char*)c);
// 或者
c3 = (char*)c;
printf("%s\n",c3);
// 输出汉字内码
printf("输出汉字内码\n");
s = c;
while(*s != 0)
{
printf("%3d",*s);
s++;
}
printf("\n将char字符串转为unsigned char字符串\n");
//将char字符串转为unsigned char字符串
s = (unsigned char*)c4;
while(*s != 0)
{
printf("%3d",*s);
s++;
}
}
输出如下:
输出英文字符及空格内码
97 98 99 32 65 66 67
将unsigned char转为char后输出
你好
你好
输出汉字内码
196227186195
将char字符串转为unsigned char字符串
196227186195
分享到:
相关推荐
此为QString无损转char*和unsigned char* 。 当QString内容包含汉字时,转换char*等会发生...使用后char*与unsigned char*的qDebug()输出与QString输出结果相同。 注意,该函数返回unsigned char*使用完毕后记得delete。
在C中,默认的基础数据类型均为signed,现在我们以char为例,说明(signed) char与unsigned char之间的区别。 首先在内存中,char与unsigned char没有什么不同,都是一个字节,唯一的区别是,char的最高位为符号位,...
如何把char str,或unsigned char str转换成CString
实现将unsigned char数组转成string型,用16进制显示。
C语言toascii()函数:将字符转换成对应的ASCII码 头文件: #include 定义函数: int toascii(int c); 函数说明:toascii()会将参数c 转换成7 位的unsigned char 值,第八位则会被清除,此字符即会被转成ASCII码...
main.c为测试文件,调用tools.h中的函数: char * MultiCombine(char *a[],int num); 编译方法:gcc -o test main.c tools.c
自己写的unsigned char二维数组转8位bmp的函数。
把字符串转换成16进制,送到DEMO中显示,就像miniHEX那样自己去显示16进制。 unsigned char *HexString:ASCII字符串 函数返回AnsiString标准字符 const unsigned short HSCount:转换个数
#define XBYTE ((unsigned char volatile xdata *) 0) 定义 XBYTE 为 指向 xdata 地址空间unsigned char 数据类型的指针,指针值为0 这样,可以直接用XBYTE[0xnnnn]或*(XBYTE+0xnnnn)访问外部RAM了。
它通常用于表示二进制数据的字节和字符。 在C语言中, 可以使用%u格式控制字符串输出unsigned char类型的整数, 但是由于printf函数默认将char类型看作有符号类型, 因此使用%u格式控制字符串输出unsigned char...
● 字符型变量的值实质上是一个8位的整数值,因此取值范围一般是-128~127,char型变量也可以加修饰符unsigned,则unsigned char 型变量的取值范围是0~255(有些机器把char型当做unsighed char型对待, 取值范围...
注意:源程序是为qt写的,不过基本上都用的是c语言,下载之后稍作修改就可以在vc++上运行。将int数组转成uchar数组保存到数据库,然后再取出来将uchar数组还原成int数组。
c语言的itoa:char *m_itoa(int n) 整数转换为字符串。char *m_itoh(unsigned int num, int length, int prefix)整数转换为0x十六进制字符串。num: 要转换的数字,无视符号。length:指定字节长度,一字节为2个十六进制...
C语言strlen()函数:返回字符串的长度 头文件: #include strlen()函数用来计算字符串的长度,其原型为: unsigned int strlen (char *s); 【参数说明】s为指定的字符串。 strlen()用来计算指定的字符串s 的...
虽然char在标准中是unsigned(因为char类型提出的初衷是用来表示ascii码,ascii码的范围是0~127),但实际情况中究竟是signed还是unsigned取决于编译器。 可通过下面程序判断编译器的默认char类型: void char_...
c语言字符串个函数操作大全 函数名: stpcpy 功 能: 拷贝一个字符串到另...函数名: strncmpi 功 能: 将一个串中的一部分与另一个串比较, 不管大小写 用 法: int strncmpi(char *str1, char *str2, unsigned maxlen);
char *itoa_private(int val, char *buf, unsigned radix);//整数转字符串 int my_isdigit(int ch);//判断字符是否为数字 long long StrToInt(const char *s,int sign);//字符串转数字 int atoi_32(const char *s);/...
实验6-1数据拷贝程序将一个尺寸为256的unsigned char数组中的数据(其中数据依次为0-255),分别...实验6-2 字符乘法程序用户输入两个数字(二十以内的整数)的英文单词,计算出结果,并输出结果数字及结果的英文单词。