C语言学习笔记————–关键字,标识符,进制,数据类型,内存,常量与变量,函数

/ 0评 / 0

一.关键字

        在C语言中有32个系统关键字,也叫保留字,这些关键字都是有特殊用意的,所以你不能用它们作为你的变量名或者函数名,也不能乱用,要符合规范的使用,具体怎么用那以后会慢慢的提到,现在不用去深究,这里我列出这32个关键字,他们在编辑器下一般都是会变颜色的。

 
auto   double  int  struct  break  else  long  switch
case  enum  register  typedef  char  extern  return  union
const  float  short  unsigned  continue  for  signed  void
default  goto  sizeof  volatile  do  if  while  static

二、标识符

        标识符就像人的名字,是人们自定义的一些符号和名称,让人们更加容易去辨认一些变量啊、函数啊之类的,函数名与变量名也是标识符。就像变量名和函数名,我们起名字的时候要规范,就比如 getMemberNumber,Fist_model。
        注意:标识符只可以使用英文字母、数字和 _ 去命名,严格区分大小写,不能使用数字开头,不能使用系统关键字,要使用有意义的词汇,采用驼峰命名法。

三、进制

        我们先来看看平时是如何表示一个整数的,最常见的肯定是用阿拉伯数字表示,比如“十二”,我们可以用12来表示,其实这种表示方式是基于一种叫做“十进制”的计数方式。“进制”是一种计数方式,编程中常见的进制有4种:十进制、二进制、八进制、十六进制。也就是说,同一个整数,我们至少有4种表示方式。
        十进制,就是我们平时最常用的进制,讲的是逢十进一。
        二进制,就是计算机中最常用的进制,讲的是逢二进一,二进制数字必须在数字的开头加上0b,0b101这种就是二进制的数,代表事物的正反两面,二进制推进了计算机的出现。二进制与十进制的转换:1230 = 0 * 100 + 3 * 101 + 2 * 102 + 1 * 103 = 0 * 1 + 3 * 10 + 2 * 100 + 1 * 1000 二进制的基数是2,以此类推:0b1011 = 1 * 20 + 1 * 21 + 0 * 22 + 1 * 23 = 1 * 1 + 1 * 2 + 0 * 4 + 1 * 8 = 1 + 2 + 0 + 8 = 11
        八进制,讲的是逢八进一,八进制数字必须在数字的开头加上010,就比如010是八进制中的八,而不是十。八进制转十进制 027 = 7 * 80 + 2 * 81 = 7 * 1 + 2 * 8 = 23,八进制转二进制 如果是八进制转为二进制,那就反过来,用3位二进制数来表示1位八进制数025 = 0b 010 101 = 0b10101,二进制转八进制 恰好3个二进制数可以表示的最大值0b111也是7。因此,我们可以用一个八进制数来代替3个二进制数。0b11110011 = 0b 011 110 011 = 0363
        十六进制,讲的是逢十六进一,由0~9和A~F组成,A~F分别表示10~15,一般用0x开头,比如0xF就是15。十六进制转十进制 0x2F = 15 * 160 + 2 * 161 = 15 * 1 + 2 * 16 = 47,十六进制转二进制 0x25 = 0b 0010 0101=0b100101,二进制转十六进制 0b11110011 = 0b 1111 0011 = 0xF3
        这些计算我们会就行了,因为我们有强大的计算机!!!

四、数据类型

        为什么C语言这种高级语言就比较流行,应用广泛呢?因为它的计算能力强,为什么计算能力强呢?因为它的数据类型丰富。
        在C语言中,数据类型分为基本数据类型(整形(int)、浮点型(float,double)和字符型(char)),非基本数据类型(空类型(void)、指针类型(*)、构造类型(数组,struct,union,enum)),我们这里主要说一下基本数据类型。
        在基本数据类型中分为整形,浮点型,字符型,整形又分为短整型(short),长整形(long)和整形(int),浮点型分为单精度浮点型(float)和双精度浮点型(double)

五、内存

        在计算机中的存储最小单位是比特位bit,我们说的字节Byte一般来说是8bit,在寄存器中就是八位或者十六位就是说是否是两个八位的寄存器连起来运算,这样能计算的数字更大。所以说我们在计算的时候要看是几位的编译器,就比如说在64位编译器下,int是占4位的,但是一般是占2位,还要区分是否有符号,有符号的话就要加上符号位。

neicun1

neicun2

        相对应的,当我们要输出一个字符时就需要占位,不同类型的字符占位用的符号也是不一样的。

jz

六、常量与变量

        在C语言中,我们常常用一些代号来命名某些值,这就是量,一成不变的是常量,而可以改变的就是变量。
        他们的声明需要一些关键字的约束,就比如说你声明一个变量 int i,那 int 就约束了 i 的类型,i 必须是 int 类型的。声明了变量之后就是使用了,直接给 i 赋值就行了,比如 i = 100; 那么 i 的值就是100了,使用的时候直接使用 i 就行了。变量分为局部变量和全局变量,局部变量只能一部分地方使用,而全局变量是相对的,可能整个项目都能使用。
        注意:变量的名字不能重复,严格区分大小写,可以将变量的值赋给另一个变量,变量的作用范围是从定义变量那一行开始的。

七、函数

        C语言的基本组成是函数,函数类似于面向对象编程中的“方法”,模块化更清晰,将不同功能的代码分开写,但是要注意C语言是面向过程编程的,函数的声明必须在使用之前。
        函数分为主函数,系统函数和自定义函数,我们之前用的那个 int main();函数就是主函数,每一个程序中只有一个,系统函数就是系统中的函数,比如printf()函数,自定义函数的结构如下:

 
 返回值类型  函数名(形式参数列表)
 {
     函数体
 }

int sum(int i, int j){
    printf("This is a test!");
    return i + j;
}

int main(int argc, const char * argv[]) {
    // insert code here...
    printf("Hello, World!\n");
    int a = sum(1, 2);
    printf("\n结果为:%i \n",a);
    return 0;
}

评论已关闭。