C语言初阶
文章平均质量分 70
本专栏以C语言基础知识为主,一些简单的C语言模型为辅,来介绍。
小陈从不会敲代码
小比特,大梦想。
我不生产代码,我只是代码的搬运工。
展开
-
C语言:关于动态内存管理我到底应该懂些什么?看了我这篇你就通透了。
栈区局部变量形式参数堆区mallocfreecallocrealloc静态区静态变量全局变量栈区(stack):在执⾏函数时,函数内局部变量的存储单元都可以在栈上创建,函数执⾏结束时 这些存储单元⾃动被释放。栈内存分配运算内置于处理器的指令集中,效率很⾼,但是分配的内 存容量有限。栈区主要存放运⾏函数⽽分配的局部变量、函数参数、返回数据、返回地址等。堆区(heap):⼀般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收。分配⽅式类似于链表。原创 2024-04-14 16:14:54 · 573 阅读 · 0 评论 -
C语言世界上最详细自定义类型:联合和枚举
hello!大家好,我是小陈,今天给大家带来一篇联合和枚举的博客!!!像结构体⼀样,联合体也是由⼀个或者多个成员构成,这些成员可以不同的类型。 但是编译器只为最⼤的成员分配⾜够的内存空间。联合体的特点是所有成员共⽤同⼀块内存空间。所 以联合体也叫:共⽤体。 给联合体其中⼀个成员赋值,其他成员的值也跟着变化。 编译器只为最大的成员分配足够的内存空间,它们的特点是所有成员共用一块内存空间。它打印的也是最大结构体成员的字节数。原创 2024-04-12 19:40:31 · 928 阅读 · 0 评论 -
C语言没有我这篇最详细的自定义类型之结构体,直接喂你嘴里好吧。
hello!大家好,我是小陈,今天给大家来一篇结构体的博客。原创 2024-04-08 09:20:38 · 622 阅读 · 0 评论 -
C语言最详细数据在内存中的存储,数据到底在内存怎么存放?我一招教你秒懂!!!
hello!大家好,我是小陈,我我我我又来了,今天介绍一下C语言数据在内存中的存储。原创 2024-04-01 20:32:21 · 727 阅读 · 0 评论 -
C语言最详细内存函数
• 函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置。• 这个函数在遇到 ‘\0’ 的时候并不会停下来。• 如果source和destination有任何的重叠,复制的结果都是未定义的。• memcpy函数拷贝结束后,会返回目标空间的起始地址。原创 2024-04-01 17:41:13 · 228 阅读 · 0 评论 -
C语言史上最详细的预处理详解!!!
_FILE__ // 进行编译的源文件__LINE__//文件当前的行号__DATE__//文件被编译的日期__TIME__//文件被编译的时间__STDC__//如果编译器遵循ANSI C,其值为1,否则未定义#define reg register //为 register这个关键字,创建⼀个简短的名字;) //⽤更形象的符号来替换⼀种实现case //在写case语句的时候⾃动把 break写上。原创 2024-03-29 20:21:30 · 654 阅读 · 0 评论 -
我的创作纪念日
进入大厂加油冲冲冲!原创 2024-03-27 20:32:03 · 195 阅读 · 1 评论 -
C语言看完我这篇编译与链接就够啦!!!
Hello!大家好我是小陈,今天来给大家介绍最详细的C语言编译与链接。原创 2024-03-27 20:19:29 · 818 阅读 · 2 评论 -
C语言看完我这篇最详细文件操作,你不会也得会!!!
磁盘(硬盘)上的文件是文件在程序设计中,文件一般有两种程序文件和数据文件下面展示的是磁盘上的文件函数名功能适用于具体类型fgetc字符输入函数所有输入流文件流,标准输入流-stdin,只用于文本文件fputc字符输出函数所有输出流文件流-标准输出流-stdout,只用于文本文件fgets文本行输入函数所有输入流文件流,标准输入流-stdin,只用于文本文件fputs文本行输出函数所有输出流文件流,标准输出流-stdout,只用于文本文件fscanf。原创 2024-03-26 17:17:37 · 727 阅读 · 0 评论 -
C语言一招教你弄懂字符函数和字符串函数
大家好,我是小陈,今天给大家介绍C语言字符函数和字符串函数,不断复盘,加油!原创 2024-03-22 11:45:00 · 648 阅读 · 0 评论 -
C语言看完这篇深入理解指针(5)你就成仙了!!!
sizeof是计算变量所占内存空间大小的,单位是字节,也就是计算数据类型的大小,操作数是类型的话,计算的是使用类型创建变量所占内存空间的大小。sizeof只关注占用内存空间的大小,不在乎内存中存放什么数据。sizeof是单目操作符,不是函数,计算的时候会把字符串的\0计算。原创 2024-03-20 11:32:29 · 552 阅读 · 1 评论 -
C语言深入理解指针(4)
回调函数就是⼀个通过函数指针调⽤的函数。如果你把函数的指针(地址)作为参数传递给另⼀个函数,当这个指针被⽤来调⽤其所指向的函数 时,被调⽤的函数就是回调函数。回调函数不是由该函数的实现⽅直接调⽤,⽽是在特定的事件或条 件发⽣时由另外的⼀⽅调⽤的,⽤于对该事件或条件进⾏响应。回调函数改造计算器实现。原创 2024-03-18 15:35:52 · 354 阅读 · 0 评论 -
C语言深入理解指针(3)
是指针变量整型指针变量:int *pint;存放的是整型变量的地址,能够指向整形数据的指针。浮点型指针变量:float * pf;存放浮点型变量的地址,能够指向浮点型数据的指针。数组指针变量应该是:存放的应该是数组的地址,能够指向数组的指针变量。//p1先和[10]结合,所以它是一个指针数组。数组指针变量p先和结合,说明p是一个指针变量变量,然后指针指向的是一个大小为10个整型的数组。所以p是一个指针,指向一个数组,叫数组指针。这⾥要注意:[]的优先级要⾼于。原创 2024-03-18 09:37:20 · 909 阅读 · 0 评论 -
C语言深入理解指针(2)
通过这两个打印效果我们可以看出&arr[0]和arr,它们取出的地址都是首元素的地址,那么数组名本来就是地址,而且是首元素的地址,数组名就是数组首元素(第一个元素)的地址。sizeof(数组名),sizeof中单独放数组名,这里的数组名表示整个数组,计算的是整个数组的大小,单位是字节,这个记住就好。&数组名,这里的数组名表示整个数组,取出的是整个数组的地址(整个数组的地址和数组首元素的地址是有区别的)1.数字传参的本质是传递了数组首元素的地址,所以形参访问的数组和实参的数组是同一个数组的。原创 2024-03-15 16:03:41 · 1006 阅读 · 0 评论 -
C语言深入理解指针(1)
小陈也是学完了指针,还是有很多不多的地方,接下来会输出5篇博客去帮助自己彻底弄懂指针,以前的知识也需要复盘了呀。原创 2024-03-11 16:42:20 · 924 阅读 · 0 评论 -
C语言一篇文章给你讲清所有的操作符
Hello,大家好,我是小陈,记得刚学操作符的时候很简单,到后面学了其余的操作符,觉得总是记不住,今天你看了我的文章,我保证你记得住。•算术操作符: + 、- 、* 、/ 、%• 移位操作符: >• 位操作符: & | ^ `• 赋值操作符: = 、+= 、 -= 、 *= 、 /= 、%= 、= 、&= 、|= 、^=• 单⽬操作符:!、++、--、&、*、+、-、~ 、sizeof、(类型)• 关系操作符: > 、>= 、< 、原创 2024-02-29 11:06:04 · 866 阅读 · 0 评论 -
C语言一招教你搞定所有基础函数知识(下)
栈(stack)是现代计算机程序里最为重要的概念之一,几乎每一个程序都使用了栈,没有栈就没有函 数,没有局部变量,也就没有我们如今看到的所有的计算机语言。栈为一种特殊的容器, 用户可以将数据压入栈中(入栈,push),也可 以将已经压入栈中的数据弹出(出栈,pop),但是栈这个容器必须遵守一条规则:先入栈的数据后出 栈(First In Last Out, FIFO)。栈则是一个具有以上属性的动态内存区域。程序可以将数据压入栈中,也可以将数据 从栈顶弹出。压栈操作使得栈增大,而弹出操作使得栈减小。原创 2024-02-28 09:48:13 · 825 阅读 · 0 评论 -
C语言一招教你搞定所有基础函数知识(中)
递归是什么?递就是递推,回就是回归,递推到结束,回归到开始,说白了就是函数自己调用自己,开始到结束调用,结束到开始调用。这个代码只是为了演示递归的基本形式,不是为了解决问题,最终会栈溢出。原创 2024-02-10 12:00:00 · 693 阅读 · 1 评论 -
C语言一招教你搞定所有基础函数知识(上)
库函数就是C语言仓库里的函数,内置函数,而标准库可以通俗的解释为为程序员提供用的函数。ret_type fun_name(形式参数)ret_type 是函数返回类型fun_name 是函数名括号中放的是形式参数{}括起来的是函数体在这个图中我们可以清晰的知道自定义函数如何使用,但是要注意以下两点:1.尽量起有意义的函数名字,比如加法Add2.函数返回类型要确定好,接受的参数类型和传参的参数类型要相同。⼀般我们在使⽤函数的时候,直接将函数写出来就使⽤了。原创 2024-02-09 15:54:31 · 2102 阅读 · 0 评论 -
C语言:一篇文章带你搞懂VS实用调试小技巧及快捷键!!!
今天用一篇文章带你搞懂VS实用调试小技巧及各种快捷键!!!原创 2024-01-21 19:12:31 · 665 阅读 · 1 评论 -
C语言你都清楚了吗?这是我遗忘的零碎知识点
Hello,大家好,我是小陈,学习C语言有三个月了,难免会有遗忘的知识点或者以前根本没见过的知识点,今天我就分享给大家。原创 2024-01-20 14:55:10 · 2043 阅读 · 1 评论 -
C语言包中形参的隐含存储类别
数据分别存放在静态存储区和动态存储区中,全局变量存放在静态存储区中,在程序开始执行时给全局变量分配存储区,程序执行完毕就释放。从变量值存在的时间(生存期)来观察,有的变量在程序运行的整个过程都是存在的,有的变量则是在调用其所在的函数时才临时分配存储单元。C语言中,每个变量额函数都有两个属性:数据类型和数据的存储类型,存储类型指的是数据在内存中存储的方式,即静态存储和动态存储。程序中大多数变量属于自动变量。函数中的局部变量,若未声明为static存储类别,都是动态地分配存储空间的,数据存储在动态存储区中。原创 2024-01-15 12:00:00 · 616 阅读 · 2 评论 -
C语言学习的初步体会
编程是一门计算机语言,你要让它和你成功交流,目前我的方法是:课前预习,上课听讲,下课练习写作业,再刷一些网站上的题,敢于问问题,解决问题。偶尔发发博客,如有不足,希望各位前辈,再给我一些学习建议,晚辈多谢了。肯定是大厂,阿里,腾讯,字节,百度等等。现实我没太大的理想,走一步看一步吧,毕业后能养活自己就行了,有多大能力干多的事情。本人学习软件专业,每周都要学习,多少时间的话,每天8个小时还是有的,会一直学的,得拿这个吃饭。我来自河北,是个初学者,初学c语言,我也不知道怎么学,原创 2023-11-19 17:47:55 · 194 阅读 · 0 评论 -
C语言整型常量的表示方法
常数的后缀:在16位字长的机器上,基本整型的长度也为16位,因此表示的 数的范围也是有限定的。0X15L (十进制为21),0xA5L(十进制为165),0x10000L(十进制为65536)。2)八进制整常数:八进制整常数必须以0开头,既以0作为八进制的数的前缀,数码取 值为0~7。以下各数是合法的八进制数: 015(十进制为13)、0101(十进制为65) 0177777(十进制为65535);0X2A(十进制为42)、0XA0 (十进制为160)0xFFFF(十进制为65535);原创 2024-01-14 15:23:26 · 819 阅读 · 1 评论 -
C语言 :你真的明白了ASCII码与转义字符吗?!
这篇文章保你弄懂转义字符和ASCII码值原创 2024-01-12 15:37:39 · 532 阅读 · 1 评论 -
C语言数组基础知识
C语言数组基础知识。原创 2024-01-02 15:04:02 · 1049 阅读 · 0 评论 -
C语言扫雷游戏的实现
今天来搞一下这个扫雷小游戏哈,保证让你听懂。三个文件就欧克了,两个.c文件,一个头文件定义一些宏和常量3.头文件game.h代码实现:这里啰嗦一句,加了和是为了实现恶搞关机和清屏操作4.game函数功能的实现:1.初始化棋盘:a.初始化棋盘1:b.初始化及打印棋盘1和2:这里的意思是外面那层棋盘,是为了不让数组越界2.布置雷:5.实现排雷后,可以确定周围的雷数:a.列举累加法:6.获取排雷的个原创 2023-12-10 17:10:05 · 565 阅读 · 1 评论 -
C语言中sizeof与strlen的定义与区别
Sizeof是一个关键字,也是操作符,专门用来计算sizeof的操作符数的类型长度的,单位是字节,也就是说sizeof专门用来计算类型长度的,像int,char,float等类型都可以通过这个关键字计算。(包含多少个字符)。strlen () 函数从字符串的开头位置依次向后计数,直到遇见 0 ,然后返回计时器的值。最终统计的字符串长度不包括 0。当然也可以计算表达式,表达式可以省略后边的括号的,因为它后面的表达式是不真实参与运算的。2.strlen的定义。的长度,不包括结束符。原创 2023-12-01 11:22:11 · 498 阅读 · 0 评论 -
C语言九九乘法表和for循环的真正意义
九九乘法表和for循环的真正意义。原创 2023-12-18 12:00:00 · 506 阅读 · 1 评论 -
C语言多层printf问题,这是一个有趣的函数。
多层printf问题,这是一个有趣的函数。原创 2023-12-08 11:55:42 · 443 阅读 · 0 评论 -
C语言猜数字游戏的实现
闲来无事,来个C语言猜数字游戏,错了就关机哦!原创 2023-12-17 17:16:54 · 699 阅读 · 1 评论 -
C语言分支和循环语句(上篇)
分支语句:条件判断语句也叫分支语句:if语句、switch语句原创 2023-12-02 10:57:06 · 732 阅读 · 3 评论 -
C语言关于二维数组,能省略行问题,但不能省略列的问题
关于二维数组,能省略行问题,但不能省略列的问题。原创 2023-12-04 08:55:57 · 696 阅读 · 0 评论 -
C语言分支和循环语句(下篇)
do while 循环先执行语句,执行完语句,再去判断表达式,并且在do while 循环中,语句至少要执行一次的。原创 2023-12-03 15:14:46 · 1057 阅读 · 2 评论 -
C语言main函数中参数的意义
【代码】main函数中参数的意义。原创 2023-12-22 16:16:54 · 364 阅读 · 0 评论 -
C语言关键字的意义及定义,有哪些?
C语言的关键字共有32个,根据关键字的作用,可分其为数据类型关键字、控制语句关键字、存储类型关键字和其它关键字四类。(1) char :声明字符型变量或函数(2) double :声明双精度变量或函数(3) enum :声明枚举类型(4) float:声明浮点型变量或函数 (5) int: 声明整型变量或函数(6) long :声明长整型变量或函数 (7) short :声明短整型变量或函数(8) signed:声明有符号类型变量或函数(9) struct:声明结构体变量或函数(10) union:声明联合原创 2023-12-21 17:33:41 · 1020 阅读 · 0 评论 -
C语言什么是编译器?什么是集成开发环境?
语言代码由固定的词汇按照固定的格式组织起来,简单直观,程序员容易识别和理解,但是对于CPU,C语言代码就是天书,根本不认识,CPU只认识几百个二进制形式的指令。这就需要一个工具,将C语言代码转换成CPU能够识别的二进制指令,也就是将代码加工成 .exe 程序;这个工具是一个特殊的软件,叫做编译器(Compiler)。编译器能够识别代码中的词汇、句子以及各种特定的格式,并将他们转换成计算机能够识别的二进制形式,这个过程称为编译(Compile)。编译也可以理解为“翻译”,类似于将中文翻译成英文、将英文翻译成象原创 2023-12-21 17:25:08 · 1062 阅读 · 0 评论 -
C语言关于闰年的判断及思路和解决方法
首先我们要知道判断闰年的方法,这是一个数学逻辑,闰年有像2020,2024这样的年份,从中我们能观察出什么呢?原创 2023-11-30 19:15:11 · 636 阅读 · 0 评论 -
C语言的标识符命名规则
C语言的标识符命名规则原创 2023-12-06 14:59:19 · 853 阅读 · 1 评论