C/C++基础语法详解
文章平均质量分 95
羊小猪~~
探索C/C++,ai算法,go的世界,在迷茫中寻找“光芒”
展开
-
C/C++语言基础--预编译指令、宏定义(带参宏、宏函数)、头文件重复包含解决方法等
预定义宏是C语言中标准编译器预先定义的宏,在ANSI标准中C程序有5个预定义宏可以直接使用。宏说明LINE当前编译的代码的行号FILE当前编译文件的源文件名DATE当前源程序创建的日期TIME当前源程序创建的时间FUNCTION当前正在被访问的函数名int main()return 0;11:18:0410main注意:__FUNCTION__调bug特别好用,🤠#define 叫做宏定义命令,它也是C语言预处理命令的一种。所谓宏定义,就是用一个标识符来表示一个表达式。原创 2024-09-12 11:37:39 · 906 阅读 · 0 评论 -
C/C++语言基础--函数基础(函数定义、调用、生命周期、递归)
是一个大型程序中的某部分代码,由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代码,具备相对的独立性。是构成程序的基本模块,封装思想,可以实现代码复用为什么要使用函数?可以省去编写重复代码的苦闷可以让程序模块化,提高代码可读性方便后期修改、完善隐藏了实现的细节下图是在一个入口函数main下调用的函数和变量一样,要想使用一个函数,定义是不可缺少的,函数定义有4个要素:返回类型,函数名,形参和函数体。原创 2024-09-02 15:44:56 · 1421 阅读 · 0 评论 -
C/C++语言基础--C文件操作(打开、关闭、读写、重定向等)
在Linux上,万物皆文件,在Windows上,我们磁盘下的一个个文件夹、dox等也称文件,一般指存储在外部介质(如磁盘磁带)上数据的集合水流的特点,一个地方流到另外一个地方,单向流动的,IO流原理也类似。操作系统是以文件为单位对数据进行管理的,输入输出是数据传送的过程,数据如流水一样从一处流向另一处,因此常将输入输出形象地称为流(stream),即输入输出流。例如:在C语言中,可以把文件看作是一个容器,可以从这个容器中读数据和写数据。原创 2024-08-31 15:18:37 · 1907 阅读 · 0 评论 -
C/C++语言基础--结构体知识详解(包括:结构体数组、字节对齐、位段等内容)
结构体类型已经声明,如何使用结构体类型定义结构体变量呢?先声明结构体类型再定义结构体变量在声明结构体类型的同时定义变量...}maye;typedef取别名之后再定义变量...}Student;//加了typedef之后,这里的Student就是struct Student 的别名了通过第一种方法定义结构体变量时,struct关键字不能省略。原创 2024-08-25 11:55:57 · 1604 阅读 · 1 评论 -
C/C++语言基础--字符串(包括字符串与字符数组、字符串与指针、字符串处理函数等),代码均可运行
编译器不会给字符数组自动添加’\0’编译器会自动给双引号的字符串字面值加上’\0’指针指向的字符串是常量,是没法修改的。原创 2024-08-23 13:21:02 · 1378 阅读 · 0 评论 -
C/C++语言基础--指针三大专题详解1(包含常见错误,代码均可运行)
指针描述了数据在内存中的位置,标示了一个占据存储空间的实体,在 C/C++语言中,指针一般被认为是指针变量,指针变量的内容存储的是其指向的对象的首地址,指向的对象可以是变量,数组,函数等占据存储空间的实体。总的来说指针实际上是一种特殊的数据类型,用来存储的首地址一种特殊的数据类型,用来描述数据在内存中的位置指针定义如下int *p;同时定义多个指针变量时,每个标识符前面都要加*号,否则后面的会被定义成int型变量。原创 2024-08-16 13:42:11 · 1186 阅读 · 0 评论 -
C/C++语言基础--指针三大专题详解3,完结篇(包括指针做函数参数,函数指针,回调函数,左右法则分析复杂指针等)
函数返回值类型 (* 指针变量名) (函数参数列表);“函数返回值类型”表示该指针变量所指向函数的 返回值类型;“函数参数列表”表示该指针变量所指向函数的参数列表。那么怎么判断一个指针变量是指向变量的指针,还是指向函数的指针变量呢?看变量名的后面有没有带有形参类型的圆括号,如果有就是指向函数的指针变量,即函数指针,如果没有就是指向变量的指针变量。函数指针没有++和 --运算实际当中,需要声明一个复杂指针时,如果把整个声明写成上面所示的形式,对程序可读性是一大损害。原创 2024-08-22 19:20:50 · 1327 阅读 · 0 评论 -
C/C++语言基础--指针三大专题详解2(指针与数组关系,动态内存分配,代码均可)
使用指针访问数组元素和使用数组名没有任何区别原创 2024-08-19 14:30:58 · 951 阅读 · 0 评论 -
C/C++语言基础--一维和二维数组详解(包含基础排序,二分,推箱子等案例,代码均可运行)
数据类型 数组名[LEVEL][ROW][COLLEVEL 三维数组的层ROW 三维数组的行COL 三维数组的列对于三维数组可以理解为一个本子,每一页都是一层,而每一页上的表格就是对于的二维数组。原创 2024-08-14 12:41:31 · 1124 阅读 · 0 评论 -
C/C++语言基础--分支和循环结构
无论C还是C++,还是其他语言写的程序都是由循环结构、分支结构和循环结构所构成的。原创 2024-08-10 10:04:17 · 632 阅读 · 0 评论 -
C/C++语言基础--C语言标准输入和输出
stdint.h头文件定义了各种整型的别名。定义在该头文件中的宏限制了各种整型(比如 char、int 和 long)的值。这些限制指定了变量不能存储任何超出这些限制的值,例如一个无符号可以存储的最大值是 255。下面的值是特定实现的,且是通过 #define 指令来定义的,这些值都不得低于下边所给出的值。宏值描述INT8_MIN-128定义一个字节的比特数。INT16_MIN-32768定义一个有符号字符的最小值。INT32_MIN定义一个有符号字符的最大值。INT64_MIN。原创 2024-08-08 23:16:28 · 1009 阅读 · 0 评论 -
C/C++语言基础--运算符和表达式
在由&&和||运算符组成的逻辑表达式中,C语言有个“节省计算”原则,当计算出一个子表达式的值后便可确定整个逻辑表达式的值时,后面的子表达式就不需要再计算了,这种表达式也称为短路表达式。对于&&符号,如果左边表达式为false,则右边表达式不会执行,即不会执行printf(“1”),如果左边表达式为true,则右边表达式会执行,即会执行printf(“2”),输出2。这个就是由“结合性”决定的。,乘和除的优先级相同,但是计算的时候是从左往右,即先计算乘再计算除,所以乘和除的结合性就是从左往右。原创 2024-08-05 23:52:30 · 773 阅读 · 0 评论