c语言数据结构和变量

复习和补充(c语言的基础概念)

1.\0的作用:

例如printf函数结束打印的标志是\0,对于字符串来说,末尾还隐藏着一个\0以供函数结束的标志。而如果单单打印单字符则会导致数据的越界访问。例如

#include 
int main()
{
    char arr[] = {'a', 'b', 'c'};
    return 0;
}

此时返回结果会出现乱码。此时在c后加'\0'即可解决问题。 

2.转义字符:

顾名思义,会转换字符的含义,如\n,\\等等。


而\ddd适用于表示1到3个八进制的数字,\xdd则适用于表示2个十六进制的数字,\0代表没有内容。

3.语句分为空语句、表达式语句、函数调用语句、复合语句、控制语句。

其中复合语句是指成对括号中的代码构成的代码块。

4.注释有两种:

//可以注释掉一排的代码,/**/可以同时注释掉多行的代码,但缺点是不能嵌套注释。且注释在代码中时,会直接被空格替代,此时要注意代码的格式。

新内容

1.数据类型:分为内置类型与自定义类型两种

内置类型分为字符型,整形,浮点型与布尔类型。

自定义类型分为数组,结构体,枚举与联合体。

数据类型的长度通过sizeof来表达,char为1字节,_Bool为1字节,short为2字节,int为4字节,long可为4字节,可为8字节,不同编译器规则不同

2.signed与unsigned

unsigned的好处是可表达的最大数是signed的两倍,原因是字节的最前一位没有被正负号所占据。

3.数据类型的取值范围

要去极限值时,尽量使用常量eg.INT_MIN,INT_MAX.

4.变量

变量分为全局变量与局部变量

我们会关注内存的三个区域:栈区、堆区、静态区。

局部变量存储在栈区,全局变量存放在静态区,而堆区有着动态内存管理。

你可能感兴趣的:(c语言,数据结构,算法,c++)