C语言学习笔记(二)—— C语言基础数据类型、变量与运算符详解

📅 2026/7/23 6:26:03
C语言学习笔记(二)—— C语言基础数据类型、变量与运算符详解
前言上一篇博客介绍了 Linux 常用命令、vi 编辑器以及 GCC 编译器的基本使用。本次课程正式进入C语言基础知识的学习包括数据类型、变量、常量、运算符以及输入输出函数等内容。这些知识是后续学习函数、数组、指针等高级内容的基础因此必须牢固掌握。一、GCC编译流程在 Linux 中一个 C 程序从源码到可执行文件需要经过四个阶段。hello.c │ ▼ 预处理Preprocess │ ▼ 编译Compile │ ▼ 汇编Assemble │ ▼ 链接Link │ ▼ hello对应命令如下1. 预处理gcc -E hello.c -o hello.i主要完成展开头文件宏替换条件编译例如#include stdio.h #define MAX 100都会在预处理阶段完成替换。2. 编译gcc -S hello.c -o hello.s将 C 代码转换成汇编代码。3. 汇编gcc -c hello.c -o hello.o生成目标文件Object File。4. 链接gcc hello.c -o hello生成最终可执行程序。运行程序./hello二、C语言基本数据类型C语言的数据类型决定了变量能够存储的数据种类以及占用内存大小。主要分为数据类型 │ ├──整数 ├──浮点数 ├──字符 ├──布尔 └──void1、整数类型类型大小short2字节int4字节long8字节例如short a; int b; long c;还可以分为signed int unsigned intunsigned 不能表示负数但是能表示更大的正整数。2、浮点数类型包括float double示例float a 3.14f; double b 3.1415926;其中float4字节double8字节double 精度更高。3、字符类型字符类型只有一个char例如char chA;实际上字符在计算机内部保存的是 ASCII 码。例如A - 65 a - 97因此printf(%d, A);输出654、布尔类型需要包含头文件#include stdbool.h定义bool flagtrue;只有两个值true false5、void类型void 表示无类型。例如void func() { }或者void *p;三、常量与变量常量程序运行过程中不会发生改变。例如100 3.14 A hello也可以利用宏定义#define PI 3.1415926宏不会占用内存仅仅是文本替换。变量变量用于保存程序运行过程中的数据。定义格式数据类型 变量名;例如int age; float score; char ch;建议变量定义时立即初始化int num0;否则变量中可能保存随机值。四、变量命名规范变量名应遵循以下原则✅ 可以使用student maxScore temp_num不能使用1abc printf int推荐采用驼峰命名studentScore或者下划线命名student_score提高代码可读性。五、类型转换混合类型计算时系统会自动进行类型转换。例如int a5; double b3.5; printf(%lf,ab);输出8.500000这里 int 自动转换成 double。也可以进行强制类型转换(int)3.14结果3小数部分被舍弃。六、常见运算符算术运算符运算符功能加-减*乘/除%取余例如int a10; int b3; printf(%d,a%b);输出1自增、自减a a区别a 先使用 后加1a 先加1 后使用这是初学者容易出错的地方。赋值运算符除了还有 - * / %例如a5;等价于aa5;sizeof运算符查看变量占用字节数。例如int a; printf(%d,sizeof(a));输出4七、输入输出函数需要头文件#include stdio.hprintf()输出函数例如printf(Hello World\n);scanf()输入函数例如int a; scanf(%d,a);getchar()读取一个字符char ch; chgetchar();putchar()输出一个字符putchar(A);输出A示例输入一个小写字母输出对应的大写字母。#include stdio.h int main() { char ch; chgetchar(); putchar(ch-32); return 0; }运行输入 a 输出 A结语本篇博客总结了 Linux 环境下 C 语言入门的重要知识点包括数据类型、变量、运算符和输入输出函数。如果本文对你有所帮助欢迎点赞、收藏、评论一起学习 Linux 与 C 语言共同进步