C语言关键字是什么?
各位少年在我们
C语言中有一批保留名字的符号 比如说int,if,return,这些符号被称为保留字或者关键字。
关键字的意义三条规则
第一条 关键字都有特殊的意义 是保留给C语言使用的
第二条 程序员自己创建标识符的时候是不能和关键字重复的
第三条 关键字也是不能自己创建
auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
注:在C99标准中加入 inline,restrict,_Bool,Comploex,imaginary等关键字
一些关键字大家都可以去了解一下 不过使用最多的还是上面的32个关键字
后面我会给各位少年分享
字符和ASCLL码值
在键盘上可以敲出各种字符,如a,q,@,#等,这些符号都被称为字符,C语言字符是用单引用号括起来的如‘a' ,'b','@'。
我们知道在计算机中所有数据的都是以二进制的形式存储的,那这些字符在内存中分别以什么样的二进制存储的呢?
答案
如果我们每个人自己给这些字符中的每个字符编一个二进制序列,这个就叫做编码,为了方面大家相互通信,不造成混乱,后来美国国家标准学会ANSI出台了一个ASCLL编码C语言中字符就遵循了ASCLL编码的方式。
送各位少年一个ASCLL码表希望对大家有所帮助
我们知道计算机以二进制方式来存储 数据在内存中存储的时候,存储的也是二进制
!@ #~abcdef
我举个例子a的编号是97 然后转换成成二进制存储到CPU里头
那我们实验一下 一个打印所有ASCLL码表的代码 来分享给大家 举例子
#include<stdio.h> int main() { int i=0; for(i=32;i<=127;i++) { printf("%c",i); } return 0; }
很多少年可能没见过for循环 大家可以理解为i每次都会加1 i现在的值是32,i知道加到等于127结束 ,哪少年们还记得%c是打印什么的吗?是打印字符的 所以这里打印的是ASCLL码值(数字转换成ASCLL码表的值)
好接下来我们介绍字符串和斜杠0
printf(”%s\n“,”abcdef");百分号S是打印字符串的
各位少年如果我们将这段代码打印 结果会是什么呢?
很显然是abcdef 但是printf里面的字符其实还有一个\0,哪\0是什么呢?
答 对于字符串abcdef,我们实际上看到6个字符:a,b,c,d,e,f,但是实际上在末尾还隐藏一个\0的转义字符,\0是字符串的结束标志。所以我们在使用库函数printf()打印字符串或者strlen()计算字符串长度的时候遇到斜杠0的时候自动停止了 意思是说一个字符串斜杠0是结束标志。
接下来少年们,我们再看一段代码
char arr[]="abc"; char arr2[]={'a','b','c'};
很显然一个编译器识别了自动给放斜杠0了
第二个就乱码了,然后打印就发现出现糖糖糖,这是为什么呢?
是因为没有遇到斜杠0 导致计算机找不到结束标志就会出现糖糖糖了
好了各位少年 我们今天就分享到这里了,晚安各位少年。