C语言之字符集、ASCII码和sizeof运算符
一 字符集和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
)
- 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;
}
最新文章
- Fis3前端工程化之项目实战
- git超详细教程
- 一起来学习android自定义控件3——边缘凹凸的View
- Git秘籍:在 Git 中进行版本回退
- .net后台获取HTML中select元素选中的值
- 认识C++中的临时对象temporary object 分类: C/C++ 2015-05-11 23:20 137人阅读 评论(0) 收藏
- 20145302张薇 GDB调试汇编堆栈过程分析
- 学习笔记 BIT(树状数组)
- Coco2dx 3D例子
- 类型解释器——C专家编程读书笔记
- 多个storyboard开发应用程序,封装.bundle和.a不用xib使用storyboard!!!
- 206. Reverse Linked List
- [转] iOS开发之使用lipo命令制作模拟器与真机通用静态库
- margin的BUG
- Apache OFBiz 学习笔记 之 实体引擎
- hdu 5464 Clarke and problem dp
- 如何:在 StackPanel 和 DockPanel 之间进行选择
- 解决CentOS(6和7版本),/etc/sysconfig/下没有iptables的问题
- event flow
- svg中实现文字随曲线走向,HTML直接写和JavaScript创建对象两种方式