C语言的ASCii码表

Python010

C语言的ASCii码表,第1张

注意:ASCii码表一共也就128个控制字符(编号从0~127),从表中可以看出,他是不支持汉字的(但是面向对象的java就不存在,他是用的unicode,支持汉字毫无压力)。你到百度文库里去搜集资料,很多很多。。。。。。(我之前搜集到很多,实在不想找就留下你的QQ邮箱)。。。。。

。。。。是求给分啊。黑方格的ASC编码的十进制表示是:22

对应前33个特殊用途编码的释义字符串,设立一个char *型指针数组依次存放它们的首地址,用一个for循环列表输出。对以后的编码,对应输出其字符即可。代码如下:

//#include "stdafx.h"//If the vc++6.0, with this line.

#include "stdio.h"

int main(void){

    char *a[33]={"NUL(null)","SOH(strt of heading)","STX(start of text)",

        "ETX(end of text)","EOT(end of transmission)","ENQ(enquiry)",

        "ACK(acknowledge)","BEL(bell)","BS(backspace)",

        "TAB(horizonfal tab)","LF(NL line feed, new_line)","VT(vertical tab)",

        "FF(NP form feed, new page)","CR(carriage return)","SO(shift out)",

        "SI(shift in)","DLE(data link escape)","CC1(device control 1)",

        "DC2(device control 2)","DC3(device control 3)","DC4(device control 4)",

        "NAD(negative acknowledge)","SYN(synchronous idle)","ETB(end of trans, block)",

        "CAN(cancel)","EM(end of medium)","SUB(substitute)",

        "ESC(escage)","FS(file separator)","GS(group separator)",

        "RS(record separator)","US(unit separator)","SPACE"},i

    printf("Dec\tHex\tChar\n")

    for(i=0i<33printf("%d\t%X\t%s\n",i++,i,a[i]))

    for(i<127printf("%d\t%X\t%c\n",i++,i,i))

    printf("%d\t%X\t%s\n",i,i,"DEL")

    return 0

}

首先ASCII 是一个char,[-128~127]区间

0-127 是普通ASCII,又分为可打印字符和不可打印的控制字符.

不可打印的有'\n'(10) '\r'(13) '\t','\b'等,用作打印控制的,所以前面不完整是正常的,比如你输出到13的时候,光标会移动到这一行的开头重新打印,这样会覆盖一些内容.

ASCII小于0的,用作MultiBytes,如果两个ASCII,第一个是负数,那么它会跟后面的一个字符连接,组成Multibytes,显示为系统语言代码页的字符.windows中文的语言默认的语言代码页是中文(936).所以显示中文.