一 字符集和ASCII码

结论:字符本质上也是一个整数,每个字符都有唯一一个与之对应的整数,

比如说小写的a对应97,b对应98,c对应99,大写的A对应65,B对应66,C对应67

所以字符对应的那个数字,也可以称之为ASCII码值

二 sizeof运算符

sizeof:

  用法:sizeof(类型);

   sizeof(变量);

  sizeof(常量);

 可以计算这个类型或者变量或者常量占用的字节数

tips:

   sizeof结果是unsigned long类型(unsigned long; 无符号的long型  有符号:代表可以是负数  无符号:代表只能是正数

整数类型又分为无符号整型和有符号整型

int long short都是有符号的整型,其实完整的写法是在前面加一个signed,但是因为默认就是signed,所以直接写int  long short就可以了

也就是说 int long short都可以保存负数.tips: 整型有无符号和有符号之分别,浮点数没有unsigned

)

  1. sizeof如果计算的是字符常量,那么会默认把字符转成ASCII值,然后计算出来就是4个字节,注意:只是常量,字符类型和字符变量还是1个

tips:代码例子如下

#include <stdio.h>

int main(int argc, const char * argv[]) {

//字符集和ASCII码练习

//    int num1=10,num2=20;

//

//    //int sum = num1 + num2;

//

//    int sum = num1 + 'a';

//

//    printf("%d\n",sum);//107

char ch = 97;

printf("%c\n",ch);//a

// sizeof运算符的练习

//sizeof计算类型

/*

int len = sizeof(char);

printf("%d\n",len);//1

int len2 = sizeof(int);

printf("%d\n",len2);//4

int len3 = sizeof(float);

printf("%d\n",len3);//4

int len4 = sizeof(long);

printf("%d\n",len4);//8

int len5 = sizeof(double);

printf("%d\n",len5);//8

*/

//sizeof计算变量

/*

int num = 10;

printf("%lu\n",sizeof(num));//4

char ch = 'a';

printf("%lu\n",sizeof(ch));//1

float f = 303.333f;

printf("%lu\n",sizeof(f));//4

*/

//sizeof计算常量

printf("%lu\n",sizeof(10));//4

printf("%lu\n",sizeof(10l));//8

printf("%lu\n",sizeof(10.3f));//4

printf("%lu\n",sizeof(10.333));//8

printf("%lu\n",sizeof('a'));//4个

return 0;

}

C语言之字符集、ASCII码和sizeof运算符的更多相关文章

  1. C语言字符转换ASCII码

    //函 数 名:CharToHex()//功能描述:把ASCII字符转换为16进制//函数说明://调用函数://全局变量://输    入:ASCII字符//返    回:16进制///////// ...

  2. 排坑&#183;ASCII码为160的空格(nbsp)

    阅文时长 | 2.83分钟 字数统计 | 1345.2字符 『排坑·ASCII码为160的空格(nbsp)』 编写人 | SCscHero 编写时间 | Wednesday, September 9, ...

  3. 扩展ASCII码,不同的国家有不同的字符集。Unicode转换为utf8的规则,utf8没有大小端的问题。超过0xFFFF的Unicode字符WINAPI也无能为力(附各种字符编码表及转换表)good

    一.概念 1,ASCII             ASCII(American Standard Code for Information Interchange),中文名称为美国信息交换标准代码.是 ...

  4. 字符集详解 ASCII码、Unicode、UTF-8 (转)

    认识字符集 对于计算机而言,它仅认识两个0和1,不管是在内存中还是外部存储设备上,我们所看到的文字.图片.视频等等“数据”在计算机中都是已二进制形式存在的.不同字符对应二进制数的规则,就是字符的编码. ...

  5. C语言中两位ASCII码可以表示汉字

    最近偶然有人问到这个相关字符编码的问题,所以百度了下参考了这两个资料,进行了简单分析. ******************************************************** ...

  6. LANG=C是最早最简单的C语言环境(标准ASCII码)

    LANG=C是最早最简单的C语言环境(标准ASCII码)

  7. ASCII码与unicode字符集

    问题1:为什么需要字符ASCII码.unicode码等等???它们到底有什么作用? 首先要明白一个事实:在计算机中只能用一系列存储着的0和1,当我们把一个字符存放在计算机时,我们是如何表示常用的字符呢 ...

  8. [整理]C语言中字符常量与ASCII码

    所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示.而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为 ...

  9. C语言编程基础学习字符型数据的ASCII码值为何是负数?

    C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...

随机推荐

  1. 关于标准I/O缓冲区和fork函数

    标准I/O库提供缓冲的目的是尽可能减少使用read和write调用的次数.标准I/O提供三个类型的缓冲:全缓冲.行缓冲和不带缓冲.标准输入(stdin)和标准输出(stdout)是行缓冲,标准出错(s ...

  2. SSIS如何引用外部DLL

    原文:SSIS如何引用外部DLL 当SSIS引用外部的DLL时,外部的DLL须满足以下条件: 1. DLL是强命名. 2. 加入到GAC (C:\WINDOWS\assembly),直接把DLL拉进目 ...

  3. ASP.NET MVC应用程序实现下载功能

    ASP.NET MVC应用程序实现下载功能 上次Insus.NET有在MVC应用程序实现了上传文件的功能<MVC应用程序显示上传的图片> http://www.cnblogs.com/in ...

  4. FineUI开发一个b/s结构

    手把手教你使用FineUI开发一个b/s结构的取送货管理信息系统(附源码+视频教程(第5节))   一 本系列随笔概览及产生的背景 近阶段接到一些b/s类型的软件项目,但是团队成员之前大部分没有这方面 ...

  5. 安装dynamics CRM 2013提示“实例名称必须与计算机名称相同”

    在安装CRM 2013的时候,最后一步一直提示“实例名称必须与计算机名称相同”. 原因是在安装数据库之后,我更改了计算机名称.因此就导致了可这个错. 在安装数据库的时候,数据库会记住计算机的名称,用 ...

  6. 对于vijos11.2模拟赛

    特意起了个傻逼标题,只是想提醒一下自己以后不要犯逗(所以应该没有什么神犇点进来吧?) T1,T3 当场写的时候就觉得是不可写的,看了题解之后还是觉得不可写,人弱没办法.到了这个时候也懒得管这么难的东西 ...

  7. Trie字典树算法

    特性 Trie树属于树形结构,查询效率比红黑树和哈希表都要快.假设有这么一种应用场景:有若干个英文单词,需要快速查找某个单词是否存在于字典中.使用Trie时先从根节点开始查找,直至匹配到给出字符串的最 ...

  8. D10

    =-=今天被dev-c++坑到死..简直 晚上准备怒装liunx.. T1:数论 一开始碰到的是T1的运算符优先问题吧..maybe..但是我加上括号了还是WA啊..后面把式子拆开写才A了..次奥 附 ...

  9. go语言defer使用

    defer Go语言中有种不错的设计,即延迟(defer)语句,你可以在函数中添加多个defer语句.当函数执行到最后时,这些defer语句会按照逆序执行,最后该函数返回.特别是当你在进行一些打开资源 ...

  10. GTK+编程概述

    目标 什么是GTK? 怎样做一个GTK应用程序 事件(Events).信号(Signals).回调函数(Callbacks) 组件(widgets) 引言 GIMP工具包(GTK+)最初被设计为一个光 ...