初识C语言

Posted 蓝色钴玻璃sqf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识C语言相关的知识,希望对你有一定的参考价值。

常量与变量

变量

变量有局部变量和全局变量之分,借下面一段程序介绍。

变量的位置

#include <stdio.h>
int num1 = 10;//全局变量,定义在代码块()之外
int main()

int num2 = 20;//局部变量,定义在代码块()之内
return 0;

注:当局部变量和全局变量名字相同时,局部变量优先。

作用域

局部变量的作用域是变量所在的局部范围,全局变量的作用域是整个工程。

生命周期

局部变量的生命周期是:进入作用域,生命周期开始;出作用域生命周期结束(销毁)。全局变量的生命周期是:整个程序的生命周期。

常量

①字面常量

直接写出来的

②const修饰的常变量

#include <stdio.h>
int main()

const int num = 4;
printf("%d\\n",num);
num = 8;
printf("%d\\n",num);
return 0;

//程序运行失败,因为变量num一经const修饰,便具有了常属性,其值不再改变

上面的程序中虽然num被const修饰,具有了常属性,但本质上依然是变量。

例如,下面这种定义数组的方式是错误的。

const int n = 10;
int arr[n] = 0;

③#define定义的标识符常量

# include <stdio.h>
# define MAX 10//下面出现的所有的MAX均代表10,被称为标识符常量
int main()

int arr[MAX] = 0;
printf("%d\\n",MAX);
return 0;

④枚举常量

枚举类型的定义形式为:

enum typeName valueName1, valueName2, valueName3, ...... ;

enum是一个新的关键字,专门用来定义枚举类型,这也是它在C语言中的唯一用途。typeName是枚举类型的名字。valueName1, valueName2, valueName3, ......是每个值对应的名字的列表。注意最后的;不能少。

enum weekMon,Tues,Wed,Thurs,Fri,Sat,Sun;

我们仅仅给出了名字,却没有给出名字对应的值,这是因为枚举值默认从 0 开始,往后逐个加 1(递增);也就是说,week 中的 Mon、Tues ...... Sun 对应的值分别为 0、1 ...... 6。我们也可以给每个名字都指定一个值,更为简单的方法是只给第一个名字指定值。

enum weekMon = 1,Tues,Wed,Thurs,Fri,Sat,Sun;

这样枚举值就从 1 开始递增。

字符串类型

由双引号引起的一串字符,注:字符串结束的标志是转义字符\\0,计算字符串长度时不作为其中的内容。

//打印字符串
# include <stdio.h>
# include <string.h>
int main()

char arr1[] = "abc";//"abc":a,b,c,0
char arr2[] = a,b,c;
printf("%s\\n",arr1);//打印正确
printf("%d\\n",strlen(arr1));//打印字符串arr1的长度,为3
printf("%s\\n",arr2);//打印错误,a,b,c为单个字符应该再加一个\\0
printf("%d\\n",strlen(arr2));//打印字符串arr2的长度,为随机值,直到遇到\\0
return 0;

ASCII码表

数据以二进制的形式在计算机中存储。

初识C语言(二)_变量

如字符a的十进制是97,字符A的十进制是165,字符\\0的十进制是0

转义字符

顾名思义,转变原来的意思,如\\0不再是0而是作为字符串的结束标志;\\n不是n,而是换行。

\\?

在书写连续多个问问号时使用,防止它们被解释为三字母词

\\

表示

\\"

表示"

\\\\

表示单个反斜杠\\

\\n

换行

\\t

水平制表符

\\ddd

ddd表示1-3个8进制数字

\\xdd

dd表示2个16进制数字

//打印路径c:\\test\\32\\test.c
printf("c:\\\\test\\\\32\\\\test.c");
//打印字符a
printf("%s\\n",a);
//打印字符
printf("%s\\n",\\);
//打印字符串a
printf("%s\\n","a");
//打印字符串"
printf("%s\\n","\\"");
计算c:\\test\\32\\test.c的长度
printf("%d\\n",strlen("c:\\test\\32\\test.c"));//结果为13
//\\32表示32(8)对应的十进制数作为ASCII码值所代表的字符
//32(8)=26(10),所以\\32表示->






以上是关于初识C语言的主要内容,如果未能解决你的问题,请参考以下文章

初识C语言之常量与变量

编码表初识

C语言中的ascII码表怎么看,高四位,低四位又是啥呢?

初识多态 简单理解

2021-05-13

2021-05-13