
c programing language
文章平均质量分 80
c语言学习中的笔记
凛音Rinne
备考暂停更新,会更新考研相关
展开
-
长文详解程序运行是个怎样的环境?预处理阶段在做什么?程序中我们不知道的一些事~
程序环境和预处理老规矩笔记在gitee自取~:程序环境和预处理笔记❤️欢迎喜欢学习C/C++的朋友互关一起努力!!❤️文章目录程序环境和预处理一、程序的环境二、预处理符号三、预处理指令#define1. 定义标识符常量2. 定义宏3. #define和tpyedef区别4. 替换规则5. \# 和 \##1. \#2. \##6. 宏与函数的优缺点四、\#undef 移除宏定义五、命令行定义六、条件编译1. 简单条件编译2. 判断是否定义3. 多个分支的条件编译4. 嵌套指令七、头文件包含方式原创 2021-10-12 11:42:25 · 1391 阅读 · 31 评论 -
了解文件的随机读写,文件类别、文件缓冲区,文件操作知识点补充(接上文)
文件的操作老规矩笔记自取~:文件操作进阶笔记❤️欢迎喜欢学习C/C++的朋友互关一起努力!!❤️文章目录文件的操作一、文件的随机读写1. fseek 定位文件指针函数2. ftell 当前偏移量函数3. rewind 返回起始位置函数二、文本文件和二进制文件三、feof 读取结束原因1. 判断是否读取结束四、文件缓冲区一、文件的随机读写1. fseek 定位文件指针函数根据文件指针的位置和偏移量来定位文件指针改变原文件指针指向的位置int fseek( FILE *stream,原创 2021-10-09 19:32:39 · 786 阅读 · 19 评论 -
长文介绍文件操作各类函数,读写各类数据操作,再也不用担心程序运行结束后输入的数据丢失
文件操作????????笔记自取~ :文件操作笔记????????❤️欢迎喜欢学习C/C++的朋友互关一起努力!!博主目前在学习C语言!!转码道路艰险,需要你们的支持!❤️文章目录文件操作导言一、常见文件类型1. 程序文件2. 数据文件3. 文件名二、文件指针三、文件的打开和关闭1. fopen打开文件2. "r"读取文件fgetc 读取字符函数3. fclose关闭文件4. "w"写入文件fputc字符输入函数四、文件的顺序读写1. fputs 文本行输出函数2. fgets 文本行输出函数原创 2021-10-08 18:11:34 · 534 阅读 · 13 评论 -
你的c语言老师介绍过柔性数组吗?没有的话不妨进来看看吧~~
柔性数组????????笔记自取~ :柔性数组笔记????????❤️欢迎喜欢学习C/C++的朋友互关一起努力!!博主目前在学习C语言!!转码道路艰险,需要你们的支持!❤️文章目录柔性数组1. 什么是柔性数组2. 柔性数组成员的创建3. 柔性数组成员特点4. 两种方式创建柔性数组成员1. 什么是柔性数组✨C99 中,结构体中的最后一个元素允许是未知大小的数组,这就叫做『柔性数组』成员✨ 柔性数组成员前必须至少有一个成员2. 柔性数组成员的创建直接用一段代码感受吧????st原创 2021-10-07 10:13:37 · 964 阅读 · 21 评论 -
了解动态内存管理函数melloc、calloc、free、realloc,实现内存管理自由!
动态内存管理笔记自取链接:动态内存管理笔记文章目录动态内存管理导言一、mallco 开辟动态内存空间二、free 释放动态内存空间三、calloc 初始化+开辟动态内存空间四、realloc 调整动态内存空间大小小结导言众所周知~,内存的分配如下图所示:我们已经不满足于int a = 0;int b[3] = 0;这种变量占有固定的字节数,修改不了我们比较熟悉的是静态区和栈区的变量类型,那么堆区里面有什么?接下来让我们一起了解一下动态内存分配类型的函数一、mallco原创 2021-10-06 13:56:24 · 2337 阅读 · 22 评论 -
一篇文章带你由浅入深去感受四种自定义类型的魅力——结构体类型,位段,枚举类型,联合体(共用体)类型
一篇文章让你由浅入深去感受四种自定义类型的魅力——结构体类型,位段,枚举类型,联合体(共用体)类型原创 2021-10-04 18:04:20 · 317 阅读 · 14 评论 -
string.h头文件中十一个重要的函数,笔记已经上传至gitee
string.h头文件中重要的十一个库函数笔记指路:函数不仅仅有本文的函数,还持续更新其他函数类型的解释文章目录string.h头文件中重要的十一个库函数一、strcat 字符串追加1. strncat二、strstr 字符串查找三、strlen 求字符串长度四、strcpy 字符串拷贝1. strncpy五、strcmp 字符串比较1. strncmp六、strtok 字符串划分七、memcpy 内存拷贝八、memmove 内存移动九、memcmp 内存比较十、memset 内存重置十一、原创 2021-10-02 15:46:12 · 719 阅读 · 20 评论 -
指针和数组在strlen和sizeof中的效果详解+例题详解【以多个题目进行比较去体验】
指针和数组在strlen和sizeof中的效果文章目录指针和数组在strlen和sizeof中的效果一、strlen - 库函数1. 求字符串长度2. 关于指针、数组名二、sizeof - 操作符 单位字节1. 求一个整型数组有几个元素2. 关于指针、数组名一、strlen - 库函数返回类型是size_t形参类型 const char* string1. 求字符串长度char arr[] = "abcdef";int sz = strlen(arr);2. 关于指针、数组名//原创 2021-09-28 23:03:06 · 342 阅读 · 0 评论 -
指针进阶——函数指针、结构体指针
指针进阶——函数指针、结构体指针文章目录指针进阶——函数指针、结构体指针函数指针1. 函数指针的数组2. 函数指针传参3. 指向函数指针数组的指针结构体1. 定义结构体类型2. 结构体数组指针函数指针函数指针指向的是函数的入口地址add和&add 相同 都是取出函数的地址int add(int x, int y){ }int main(){ int (*p)(int, int) = &add;//p为指针 int sum = (*p)(2,原创 2021-09-26 21:11:09 · 1777 阅读 · 1 评论 -
指针进阶——字符指针、指针数组和数组指针如何辨别和判断
进阶指针文章目录进阶指针一、字符指针1. 单个字符指针2. 常量字符串指针二、指针数组1. 存放整型指针2. 存放常量字符串指针三、数组指针1. 数组指针实现打印一维数组2. 数组指针实现打印二维数组一、字符指针1. 单个字符指针char ch = 'x';char* p = &ch;2. 常量字符串指针char* p = "asdwjwd";//后面一串数字为常量字符串常量字符串单独存在,不是字符串数组p中存放的是常量字符串中首元素a的地址打印*p也只会打印首元素,原创 2021-09-22 23:09:11 · 1074 阅读 · 2 评论 -
内存中数据的存储(更新了十六进制数大小端存储)
内存中数据的存储文章目录内存中数据的存储一、整型在数据中的存储二、浮点型在数据中的存储一、整型在数据中的存储在计算机中整型的表示有三种:原码、反码、补码三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位正负表示方法不同**原码 **将原来整型换算成二进制数PS : 二进制数如何换算例子:整数125笔算:1111101或者用计算机里面自带的计算器反码将原码的符号位不变,其他位依次按位取反就可以得到了反码+1就得到补码PS:原创 2021-09-16 19:06:08 · 3866 阅读 · 4 评论 -
函数栈帧的创建和销毁+图文详解,笔记已经更新到gitee
函数栈帧创建和销毁文章目录函数栈帧创建和销毁1. 函数栈帧和栈的概念2. esp和ebp3. 从汇编角度看调用main函数中栈帧变化4. 从汇编角度看调用main函数中调用其他函数的栈帧变化直接切入正题吧1. 函数栈帧和栈的概念函数栈帧:使用每一个函数都要在栈区开辟一个空间栈区是从高地址向低地址延申的压栈:栈顶放一个元素 push出栈:栈顶删除一个元素 pull2. esp和ebp两个重要的寄存器:用来维护正在使用的函数的函数栈帧调用main函数时候:其实调用原创 2021-09-09 17:15:13 · 185 阅读 · 1 评论 -
c语言基础知识补充-数组和指针(五)
c语言基础知识补充-数组和指针(五)作者:凛音Rinne文章目录c语言基础知识补充-数组和指针(五)一、数组1. 数组的初始化2. 数组名二、指针1. 指针运算指针加减2. 数组与指针关系3. 指针的级别4. 指针数组5. 野指针一、数组1. 数组的初始化一维数组int arr[]={1,2,3};int arr[3]={0};//字符数组的初始化int arr[]={'a',98,'c'};//98是b的ascii码值,同样可以存到数组中//全局变量不初始化数组,数组中默认放的原创 2021-08-20 13:45:23 · 245 阅读 · 0 评论 -
函数定义、嵌套、声明、递归、非递归灵活运用,c语言基础知识总结(四)
文章目录函数1. 分类2. 函数的调用3. 函数的嵌套使用4. 函数的链式访问5. 函数的声明6. 函数递归7.函数的递归和迭代函数函数的设计尽量高内聚低耦合(自己设计自己的)尽量不关系别人尽量少使用全局变量:全局变量可以改变的地方比较多,不安全1. 分类库函数IO函数:input/output/printf/scanf/getchar/putchar/字符串操作函数:strlen/strcmp/strcpy/stract字符操作函数:tolower/toupper内存操作函数:原创 2021-08-08 15:24:05 · 193 阅读 · 0 评论 -
分支与循环语句c语言基础知识细节补充(三)
分支与循环语句c语言基础知识细节补充(三)作者:凛音Rinne文章目录分支与循环语句c语言基础知识细节补充(三)分支和循环语句1. if 语句2. switch 语句3. 循环语句3.1 while 循环3.2 for 循环3.3 do while 循环3.4 goto 语句分支和循环语句顺序结构:一条路走到底不分叉不走回头路选择结构:if;switch;循环结构:for;while;do while;goto语句1. if 语句if(表达式)//注意if后面没有; 语句;/原创 2021-08-04 18:45:36 · 147 阅读 · 2 评论 -
常量、变量、操作符类型、特殊关键字等c语言基本知识详细补充(二)
作者:凛音Rinne文章目录一、 关于字符串1.1 库函数 strlen1.2 转义字符二、 关于变量三、 关于常量3.1 字面常量:3.2 const修饰的常变量3.3 #define定义的标识符常量3.4 枚举常量3.4.1枚举关键字 enum四、 数组五、 操作符5.1 常见操作符5.2 赋值操作符5.3 单目操作符5.4 关系操作符5.5 逻辑操作符5.6 条件操作符5.7 逗号操作符5.8 下标引用操作符六、 关于关键字6.1关键字 typedef(待补充)6.2关键字 static6.3原创 2021-08-02 16:15:18 · 161 阅读 · 0 评论 -
C语言scanf函数报错问题、基础知识细节补充(一)
C语言scanf函数报错问题、基础知识细节补充(一)文章目录C语言scanf函数报错问题、基础知识细节补充(一)c语言基本知识(简单了解)1.1 关于c语言国际标准1.2 关于创建工程1.3 关于scanf函数的使用报错问题1.4 关于main函数1.5 关于return 0;的疑问1.6 关于暂停控制台1.7 关于头文件1.7.1 c语言基本知识(简单了解)1.1 关于c语言国际标准ANSI C - C89/C90C99、C11(很多编译器不支持且不流行)1.2原创 2021-07-30 17:00:56 · 521 阅读 · 0 评论