一 字符集和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. 新手可以学习cocos2dx 3.0 组态(两)

    这主要是关于cocos3.0 组态,鉴于互联网已经有很多这样的文章.所以我简单谈一下: 1.python2.7 因为cocos目新建是用python脚本做的,至于为什么不用python3.x  那么请 ...

  2. leetcode第九题--Palindrome Number

    Problem: Determine whether an integer is a palindrome. Do this without extra space. click to show sp ...

  3. MySQL5.7 安装过程中出现 attempting to start service 过不去

    MySQL5.7 安装过程中出现 attempting to start service 过不去. 1,机制打开服务,把MySql服务名启动(我的是MySqlAliyun) 启动失败:提示1067错误 ...

  4. helloWord

    helloWord!!! 在cnblogs安家了

  5. ASP.NET Identity登录原理 - Claims-based认证和OWIN

    MVC5 - ASP.NET Identity登录原理 - Claims-based认证和OWIN 在Membership系列的最后一篇引入了ASP.NET Identity,看到大家对它还是挺感兴趣 ...

  6. 2014.3.11-C语言学习小结

    文件操作: 知识点: 持久化 1.文本文件的读写 2.二进制文件的读写 3.缓冲文件系统 1.打开文件 2.读写文件 3.保存 4.关闭文件 ============================= ...

  7. api的安全问题

      在给第三方系统提供api时,我们需要注意下安全问题. 比较常见的接口有http接口.以http接口为例.我们需要注意的几点: 1.只有被允许的系统才可以调用api 2.如果http请求被截获.也不 ...

  8. 大数据时代,我们为什么使用hadoop

    大数据时代,我们为什么使用hadoop 我们先来看看大数据时代, 什么叫大数据,“大”,说的并不仅是数据的“多”!不能用数据到了多少TB ,多少PB 来说. 对于大数据,可以用四个词来表示:大量,多样 ...

  9. [转]SHSH, APTicket以及iOS降級

    来源:http://disp.cc/b/522-4v3W 最近有一場Jailbreak的conference,叫做WWJC 裡面請到很多駭客來講解越獄相關知識 包括p0sixninja, iH8sn0 ...

  10. Orchard网上商店模块

    从头开始编写一个Orchard网上商店模块(1) - 介绍 原文地址:http://skywalkersoftwaredevelopment.net/blog/writing-an-orchard-w ...