字符与ASCII编码

        在c语言中字符是用单引号括起来的,如:'a' ,'A','@'

        我们知道在计算机中所有信息都是以二进制的形式进行存储的,同样字符也是通过二进制进行存储。如果我们每个人自己给这些字符中的每个字符编一个二进制序列,这就叫做编码,为了方便大家互相通信,不造成混乱,后来美国国家标准协会(ANSI)出台了一个ASCII编码,c语言的字符就遵从了ASCII编码的方式。

        ASCII(American Standard Code for Information Interchange,美国信息互换标准代码)是一套基于拉丁字母的字符编码,共收录了 128 个字符,用一个字节就可以存储,它等同于国际标准 ISO/IEC 646。

        ASCII 编码于 1967 年第一次发布,最后一次更新是在 1986 年,迄今为止共收录了 128 个字符,包含了基本的拉丁字母(英文字母)、阿拉伯数字(也就是 1234567890)、标点符号(,.!等)、特殊符号(@#$%^&等)以及一些具有控制功能的字符(往往不会显示出来,0-31位)。


参考:ASCII 图 - cppreference.com

在平常使用中,我们不需要全盘背诵,只需会查找即可,以下为最好进行记忆的数据:

  •   字符A~Z的ASCII码值从65~90
  •   字符a~z的ASCII码值从97~122
  •   注:对应大小写字符(a和A)的ASCII码值的差值为32
  •   数字字符ASCII码值从48~57
  •   换行\n的ASCII码值为10
  •   在这些字符ASCII码值中0~31这32个字符是不可以打印的字符,无法打印在屏幕上观察

对于不可打印字符具体功能可参考:ASCII码对照表,ASCII码一览表(非常详细) - C语言中文网

示例:

  1. 单个字符的打印可以用%c(字符型的占位符)来指定格式:
#include <stdio.h>

int main()
{
//此代码揭示了字符的本质为整型
    printf("%c\n",'Q');
    printf("%c\n",81);//此处的81对应Q的ASCII码值,也是可以正常打印Q的
    return 0;
}

     2.  可打印字符展示:

#include <stdio.h>

int main ()
{
    int i = 0;
    for (i = 32 ; i <= 127 ; i++)
        {
            printf ("%c ",i);

            if (15 == i % 16)
                printf("\n");//每16个字符进行换行
        }
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值