C语言常见概念

本文详细介绍了C语言的历史、编译链接过程,主要探讨了main函数、printf函数、关键字、数据类型、控制结构(包括分支、循环)、字符和ASCII编码、字符串处理、转义字符以及不同类型的语句和注释的使用。
摘要由CSDN通过智能技术生成

目录

1.C语⾔的历史和辉煌

2.编译和链接

计算机语言

a,解释性语言

b,编译性语言

3.第一个C语言程序

4.main函数(主函数)

main函数多种写法

5.printf和库函数

占位符

头文件

6.关键字(保留字)

数据类型

分支循环

7.字符(%c)和ASCII编码

8.字符串和\0(%s)

9.转义字符

10.语句和语句分类

1)空语句

2)表达式语句

3)函数调用语句

4)复合语句

5)控制语句(9种)

11.注释

注释:ctrl+k+c 

取消:ctrl+k+u     


1.C语⾔的历史和辉煌

了解更多请点击—>

https://www.tiobe.com/tiobe-index/icon-default.png?t=N7T8https://www.tiobe.com/tiobe-index/

2.编译和链接

⼀个⼯程⼀般都会有多个源⽂件组成,如下图所⽰,演⽰了源程序经过编译器和链接器处理的过程。

注: 1. 每个源⽂件(.c)单独经过编译器处理⽣成对应的⽬标⽂件(.obj为后缀的⽂件)

        2. 多个⽬标⽂件和库⽂件经过链接器处理⽣成对应的可执⾏程序(.exe⽂件)

计算机语言

a,解释性语言

HTML,XML,Python,Ruby

b,编译性语言

程序在执行之前需要有一个专门的编译过程,编译成机器语言。c,c++

3.第一个C语言程序

4.main函数(主函数)

每个 C 语⾔程序不管有多少⾏代码,都是从 main 函数开始执⾏的。

注:•main 函数是程序的⼊⼝。

       •main函数有且仅有⼀个

       •即使⼀个项⽬中有多个.c⽂件,但是只能有⼀个main函数(因为程序的⼊⼝只能有⼀个)

main函数多种写法

1.旧式写法:void main ( )

2.旧式写法:void main (void)

3.                 int main (void)  \\void表示main函数不接受任何函数

4.(很少用)int main(int argc,char *argv[])

5.printf和库函数

print \\打印 +f \\格式

\\按格式打印信息

\\printf是一个库函数

eg:printf("%c\n", 'q');  \\%d 等是字符占位符,会被后边的值替换。

占位符

1)%d——整数的打印

2)%c——字符的打印

3)%f ——小数的打印

4)%s——打印字符串

5)%lf——打印double数据

6)%ld——输出长整型

头文件

在使⽤库函数的时候,需要包含对应的头⽂件。

printf 函数需要包含的就是 stdio.h 这个头⽂件。eg:#include <stdio.h>

又例如:#include <string.h> 头文件

                strlen 库函数

了解更多请点击—>

cplusplus.com/reference/clibrary/icon-default.png?t=N7T8https://cplusplus.com/reference/clibrary/

6.关键字(保留字)

• 程序员⾃⼰在创建标识符的时候是不能和关键字重复

• 关键字也是不能⾃⼰创建的

C语⾔的常用的32个关键字如下:

 注:在C99标准中加⼊了 inline 、 restrict 、 _Bool 、 _Complex 、 _Imaginary 等关键字。

C语⾔关键字的全部介绍:

C 关键词 - cppreference.comicon-default.png?t=N7T8https://zh.cppreference.com/w/c/keyword

数据类型

char——字符

short——短整型

int——整型

long——长整型

float——单精度浮点型

double——双精度浮点型

struct——声明结构体变量或函数

union——声明共同体(联合)数据类型

unsigned——声明无符号类型变量或函数

void——声明函数无返回值或无参数,声明无类型指针

enum——声明枚举类型
 

分支循环

if , switch , for , while , do        while , break , continue‘’

7.字符(%c)和ASCII编码

\\字符用单引号引起

计算机中所有的数据都是以⼆进制的形式存储的,那字符在内存中分别以什么样的⼆进制存储的呢?如果我们每个⼈⾃⼰给这些字符中的每个字符编⼀个⼆进制序列,这个叫做编码,为了⽅便⼤家相互通信,不造成混乱,后来美国国家标准学会(ANSI)出台了⼀个标准 ASCII 编码,C 语⾔中的字符就遵循了 ASCII 编码的⽅式。

参考:ASCII 码表 - cppreference.com

注:• 字符A~Z的ASCII码值从65~90

         • 字符a~z的ASCII码值从97~122

         • 对应的⼤⼩写字符(a和A)的ASCII码值的差值是32(大写+32=小写)

         • 数字字符0~9的ASCII码值从48~57

        • 换⾏ \n 的ASCII值是:10

        • 在这些字符中ASCII码值从0~31 这32个字符是不可打印字符,⽆法打印在屏幕上观察

8.字符串和\0(%s

\\字符用双引号引起

\\就是在字符串的末尾隐藏放着⼀个 \0 字符,这个 \0 字符是字符串的结束标志

字符数组末尾一定要加上\0,要不然会打印出随机值

9.转义字符

\? :在书写连续多个问号时使⽤,防⽌他们被解析成三字⺟词,在新的编译器上没法验证了。

     \\基本不用                                 \\三字字母:eg:??)——]   ,   ??(——[

 \' :⽤于表⽰字符常量'                  \\为了打印'      '      '

 \" :⽤于表⽰⼀个字符串内部的双引号

 \\ :⽤于表⽰⼀个反斜杠,防⽌它被解释为⼀个转义序列符。

 \a :警报,这会使得终端发出警报声或出现闪烁,或者两者同时发⽣。

 \b :退格键,光标回退⼀个字符,但不删除字符

 \f :换⻚符,光标移到下⼀⻚。在现代系统上,这已经反映不出来了,⾏为改成类似于 \v 。

 \n :换⾏符

 \r :回⻋符,光标移到同⼀⾏的开头。

 \t :制表符,光标移到下⼀个⽔平制表位,通常是下⼀个8的倍数。

 \v :垂直分隔符,光标移到下⼀个垂直制表位,通常是下⼀⾏的同⼀列。

下⾯2种转义字符可以理解为:字符的8进制或者16进制表⽰形式

 \ddd :d d d表⽰1~3个⼋进制的数字。 如: \130 表⽰字符X

                        \\130这个8进制数字转化为10进制后的数字88作为ASCII码值代表字符

 \xdd :d d表⽰2⼗六进制数字。 如: \x30 表⽰字符0

\0 :null 字符,代表没有内容, \0 就是 \ddd 这类转义字符的⼀种,⽤于字符串的结束标志,其 ASCII码值是0.

转义字符参考:转义序列 - cppreference.com

10.语句和语句分类

语⾔的代码是由⼀条⼀条的语句构成的。

分为五类

• 空语句 • 表达式语句 • 函数调⽤语句 • 复合语句 • 控制语句

1)空语句

⼀个分号就是⼀条语句,是空语句

2)表达式语句

表达式的后边加上分号。

\\eg:b = a + 5;

3)函数调用语句

\\eg:printf("hehe\n");

       int ret = Add(2, 3);

4)复合语句

成对括号中的代码就构成⼀个代码块

5)控制语句(9种)

1. 条件判断语句也叫分⽀语句:if语句、switch语句;

2. 循环执⾏语句:do while语句、while语句、for语句;

3. 转向语句:break语句、goto语句、continue语句、return语句。

11.注释

注释:ctrl+k+c 

取消:ctrl+k+u     

     

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值