网站首页 > 文章精选 正文
C语言是一种高效、灵活的编程语言,广泛应用于系统编程、嵌入式开发等领域。以下是C语言的核心语法点,适合初学者快速掌握。
1.数据类型
C语言提供了多种基本数据类型,用于存储不同类型的数据。
数据类型 | 描述 | 示例 |
int | 整型(通常4字节) | int a = 10; |
float | 单精度浮点型(4字节) | float b = 3.14; |
double | 双精度浮点型(8字节) | double c = 3.14159; |
char | 字符型(1字节) | char d = 'A'; |
void | 无类型 | 用于函数返回值或指针 |
2.变量与常量
(1)变量
变量是存储数据的容器,必须先声明后使用。
语法:
数据类型 变量名;
示例:
int age = 25;
float salary = 5000.50;
(2)常量
常量是不可修改的值,使用 const 关键字定义。
语法:
const 数据类型 常量名 = 值;
示例:
const float PI = 3.14159;
3.运算符
C语言支持多种运算符,包括算术运算符、关系运算符、逻辑运算符等。
运算符类型 | 运算符 | 示例 | ||
算术运算符 | +、-、*、/、% | int result = a + b; | ||
关系运算符 | ==、!=、>、< | if (a > b) { ... } | ||
逻辑运算符 | &&、||、! | if (a && b) { ... } | ||
赋值运算符 | =、+=、-= | a += 5; | ||
位运算符 | &、|、^、~、>>、<< | int c = a & b; |
4.控制语句
(1)条件语句
- if 语句:
if (条件) {
// 条件为真时执行
}
- if-else 语句:
if (条件) {
// 条件为真时执行
} else {
// 条件为假时执行
}
- switch 语句:
switch (表达式) {
case 值1:
// 执行代码
break;
case 值2:
// 执行代码
break;
default:
// 默认执行代码
}
(2)循环语句
- for 循环:
for (初始化; 条件; 更新) {
// 循环体
}
- while 循环:
while (条件) {
// 循环体
}
- do-while 循环:
do {
// 循环体
} while (条件);
5.函数
函数是C语言的基本模块,用于封装可重用的代码。
语法:
返回值类型 函数名(参数列表) {
// 函数体
return 返回值;
}
示例:
int add(int a, int b) {
return a + b;
}
6.数组
数组是存储相同类型数据的集合。
语法:
数据类型 数组名[大小];
示例:
int numbers[5] = {1, 2, 3, 4, 5};
7.指针
指针是存储变量地址的变量。
语法:
数据类型 *指针名;
示例:
int a = 10;
int *p = &a; // p 指向 a 的地址
8.结构体
结构体是用户自定义的数据类型,用于组合不同类型的数据。
语法:
struct 结构体名 {
数据类型 成员1;
数据类型 成员2;
...
};
示例:
struct Student {
int id;
char name[50];
float score;
};
9.文件操作
C语言提供了一组标准库函数用于文件操作。
函数 | 描述 |
fopen | 打开文件 |
fclose | 关闭文件 |
fread | 读取文件 |
fwrite | 写入文件 |
fscanf | 格式化读取 |
fprintf | 格式化写入 |
示例:
FILE *file = fopen("example.txt", "r");
if (file != NULL) {
char buffer[100];
fgets(buffer, sizeof(buffer), file);
printf("%s", buffer);
fclose(file);
}
10.动态内存管理
C语言提供了动态内存分配函数。
函数 | 描述 |
malloc | 分配内存 |
free | 释放内存 |
calloc | 分配并初始化内存 |
realloc | 重新分配内存 |
示例:
int *arr = (int *)malloc(5 * sizeof(int));
if (arr != NULL) {
for (int i = 0; i < 5; i++) {
arr[i] = i + 1;
}
free(arr);
}
11.预处理器指令
预处理器指令在编译前处理。
指令 | 描述 |
#include | 包含头文件 |
#define | 定义宏 |
#ifdef | 条件编译 |
#pragma | 编译器指令 |
示例:
#define PI 3.14159
#include <stdio.h>
总结
C语言的核心语法点包括数据类型、变量与常量、运算符、控制语句、函数、数组、指针、结构体、文件操作、动态内存管理和预处理器指令。掌握这些知识点是学习C语言的基础,也是进一步深入系统编程和嵌入式开发的关键。
- 上一篇: CSP初赛冲刺 计算机体系基本结构
- 下一篇: C语言结构体成员变量名后加冒号和数字的含义
猜你喜欢
- 2025-05-16 Java 里的基本类型和引用类型
- 2025-05-16 新手小白学Java|零基础入门笔记|原来学Java可以这么简单
- 2025-05-16 深度学习CV方向高频算法面试题6道|含解析
- 2025-05-16 C语言结构体成员变量名后加冒号和数字的含义
- 2025-05-16 CSP初赛冲刺 计算机体系基本结构
- 2025-05-16 Go语言基础—整型
- 2025-05-16 java基本数据类型
- 2025-05-16 深入探索C语言数据类型:整型、浮点型、字符型全解析!
- 2025-05-16 mysql索引
- 2025-05-16 彻底搞懂PLC的数据类型和数据存储形式(干货汇总-图文并茂)
- 05-25β晶型PPH管压力等级的确定
- 05-25β晶型PPH管防静电参数
- 05-25魔兽WLK:P3五人本测试结果,冠军试炼加入观星者,掉落毕业饰品
- 05-25几滴血就能检测阿尔茨海默病?日本推出全球首款血液检测阿尔茨海默病装置
- 05-25日解析阿尔茨海默病致病蛋白构造
- 05-25抗菌药物皮试有讲究
- 05-258 周绒毛密度达 22 根 /cm^2,β-catenin 信号通路全解析
- 05-25《拳皇15》PS5/PS4平台开放性β测试用Demo上架商店
- 最近发表
- 标签列表
-
- newcoder (56)
- 字符串的长度是指 (45)
- drawcontours()参数说明 (60)
- unsignedshortint (59)
- postman并发请求 (47)
- python列表删除 (50)
- 左程云什么水平 (56)
- 计算机网络的拓扑结构是指() (45)
- 编程题 (64)
- postgresql默认端口 (66)
- 数据库的概念模型独立于 (48)
- 产生系统死锁的原因可能是由于 (51)
- 数据库中只存放视图的 (62)
- 在vi中退出不保存的命令是 (53)
- 哪个命令可以将普通用户转换成超级用户 (49)
- noscript标签的作用 (48)
- 联合利华网申 (49)
- swagger和postman (46)
- 结构化程序设计主要强调 (53)
- 172.1 (57)
- apipostwebsocket (47)
- 唯品会后台 (61)
- 简历助手 (56)
- offshow (61)
- mysql数据库面试题 (57)