
c语言
嵌入式@秋刀鱼
斗之气-三段
展开
-
printf 函数,常用的格式化输出样式
函数用于格式化输出,它允许你指定不同的格式说明符来控制输出的格式。这些格式说明符可以与各种标志、宽度、精度和长度修饰符组合使用,以实现更复杂的格式化输出。表示打印一个有符号整数,并用前导零填充到至少8位宽;表示打印浮点数并保留两位小数。原创 2024-10-30 15:38:02 · 325 阅读 · 0 评论 -
C语言中一般内存溢出的情况
在C语言中,内存溢出(Memory Overflow)通常指的是程序尝试写入的数据超过了为其分配的内存空间。这通常发生在数组操作中,当程序试图访问数组之外的内存时,就可能发生内存溢出。内存溢出是一个严重的安全问题,因为它可能导致程序崩溃、数据损坏,甚至可能被恶意利用来执行任意代码。5.不正确的内存释放:在释放内存后没有将指针设置为NULL,然后将再次使用该指针。2.错误的内存分配:在动态分配内存时,没有正确计算所需的内存大小。4.缓冲区溢出:向一个固定大小的缓冲区写入过多的数据。原创 2024-10-24 17:53:04 · 599 阅读 · 0 评论 -
C语言的32个关键字
2. **break**: 立即退出最近的 `for`、`while` 或 `do-while` 循环。25. **static**: 声明静态变量或函数,具有限制的作用域和持久的生命周期。10. **else**: 与 `if` 配合使用,表示“否则”执行的代码块。27. **switch**: 条件语句,允许基于不同的情况执行不同的代码块。7. **default**: 用于 `switch` 语句,表示默认选项。3. **case**: 用于 `switch` 语句中,表示一个选项。原创 2024-07-05 11:27:43 · 575 阅读 · 0 评论 -
C语言标准库中的函数
`strncpy`: 复制一个字符串到另一个字符串,最多复制指定数量的字符。- `strncat`: 将一个字符串的部分添加到另一个字符串的末尾。- `strstr`: 查找一个字符串在另一个字符串中首次出现的位置。- `strcat`: 将一个字符串添加到另一个字符串的末尾。- `strchr`: 查找字符串中第一次出现指定字符的位置。- `strtok_r`: 可重入版本的 `strtok`。- `strcpy`: 复制一个字符串到另一个字符串。原创 2024-07-05 11:24:55 · 401 阅读 · 0 评论 -
联合体/共用体开发案例
printf("学生的名字是:%s,班级是:%d\n",p[i].name,p[i].mes.class);printf("老师的名字是:%s,职业是:%d\n",p[i].name,p[i].mes.kemu);printf("请输入职业:t代表老师,s代表学生\n");printf("请输入老师的科目:\n");printf("请输入老师的名字:\n");printf("请输入学生班级:\n");printf("请输入学生名字:\n");原创 2023-03-01 21:02:25 · 61 阅读 · 0 评论 -
结构体与联合体概念引入
printf("联合体u1的大小是:%d\n",sizeof(u1));printf("结构体t1的大小是:%d\n",sizeof(t1));union TestU{ //联合体。struct TestT{ //结构体。原创 2023-03-01 20:32:20 · 65 阅读 · 0 评论 -
通过结构体指针来访问结构体的内容
printf("t1的idata=%d\n",ps->idata);//变量名访问,用->运算符。printf("t1的idata=%d\n",ps->cdata);//变量名访问,用->运算符。printf("t1的idata=%d\n",t1.idata);//变量名访问,用点运算符。printf("t1的idata=%d\n",t1.cdata);//变量名访问,用点运算符。//1.类型 2.名 3.值 4.地址。原创 2023-03-01 17:04:16 · 195 阅读 · 0 评论 -
结构体指针变量的引入
/1.类型 2.名 3.值 4.地址。原创 2023-03-01 16:54:02 · 64 阅读 · 0 评论 -
结构体数组应用
废票是%d\n",max.name,max.tickets,feipiao);printf("名字:%s,票数:%d\n",xm[i].name,xm[i].tickets);//输入选中的选民的名字,像拆开一个选票,看到名字一样。j++){ //拿到名字,对应候选人票数加1。printf("请输入第%个选民的名字:\n",i+1);printf("请输入你投给谁:\n");原创 2023-02-28 22:41:14 · 96 阅读 · 0 评论 -
C语言---结构体与数组
printf("学号:%d,年龄:%d,分数:%lf,名字:%s,地址:%s\n",struct Student = {{2,"张三",19,"男",96,"上海"},{3,"李四",19,"女",99,"北京"},{4,"王五",19,"男",98,"广州"}1.运用数组与结构体,打印多名学生信息成绩。原创 2023-02-28 22:01:20 · 87 阅读 · 0 评论 -
C语言---结构体
printf("学号:%d,年龄:%d,分数:%lf,名字:%s,地址:%s\n",stu1.num = 1;//点运算符来访问结构体中的成员变量(域)strcpy(stu1.addr,"南海岸");1.结构体举例,打印某班级一名学生的个人信息及成绩。原创 2023-02-28 21:27:41 · 93 阅读 · 0 评论 -
malloc动态开辟存储空间
扩容------> C库函数 void *realloc(void*ptr,size_t size) 尝试重新调整之前调用malloc或calloc所分配的ptr所指向的内存块大小。3.free:C库函数 void free(void ptr)释放之前调用calloc、malloc或realloc所分配的内存空间。C库函数 void *malloc(size_t size)分配所需的内存空间,并返回一个指向它的指针。b.防止悬挂指针---野指针的一种。4.memset---函数原型。原创 2023-02-27 13:47:08 · 153 阅读 · 0 评论 -
sizeof和strlen的区别
1.sizeof(字符大小)----- strlen(字符串的长度)2.//128.... 表示输出结果。原创 2023-02-27 13:19:03 · 73 阅读 · 0 评论 -
字符串的内存存放方式及结束标志
【代码】字符串的内存存放方式及结束标志。原创 2023-02-27 13:02:09 · 124 阅读 · 0 评论 -
字符串的引入以及注意事项
b.对野指针的内存空间操作不行;野指针--->并没有明确的内存指向,危险!a.保存地址可以------修改指向------指向字符常量的地址空间。原创 2023-02-27 12:46:39 · 145 阅读 · 0 评论 -
各种指针的定义
1.一个整型数:2.一个指向整型数的指针:3.一个指向指针的指针,它指向的指针指向一个整型数:4.一个有十个整型数的数组:原创 2023-02-27 12:22:55 · 76 阅读 · 0 评论 -
一级指针到二级指针,再到多级指针的原理
【代码】一级指针到二级指针,再到多级指针的原理。二级指针初识原创 2023-02-13 20:30:14 · 122 阅读 · 0 评论 -
指针深入认识案例
数组指针与二维数组配合应用。函数指针实战---回调函数。原创 2023-02-07 18:25:26 · 76 阅读 · 0 评论 -
关于指针的初识
运用指针的方法,封装一个函数,实现两个数的交换。原创 2023-02-03 21:21:12 · 61 阅读 · 0 评论 -
二维数组实战、全局变量实战
【代码】二维数组实战、全局变量实战。原创 2023-02-03 19:40:06 · 138 阅读 · 0 评论 -
数组形参与实参的一些用法
5.数组实战之计算不同班级学生的平均分。3.数组传参中关于形参的一些说法。4.数组实参的一些启发。原创 2023-01-25 20:48:38 · 147 阅读 · 0 评论 -
C语言---函数的封装、调用、嵌套、递归
1.一个简单的函数调用例子:比如我想运用指令来控制小车的前进、后退、向左、向右运行;提升代码的运行效率。2.进行函数封装和调用的好处就是避免代码过于复杂和冗长,结构化、模块化设计,可以使得代码更精简易懂易操作。形参的生命周期:保存在栈空间中,被调用的时候才为形式参数申请内存,调用结束,又被系统释放内存。输入四个数,在四个数字中找到最大的那个数,利用函数封装、调用、嵌套的思想。ex7:判断第几个学生的年龄为多少,利用函数递归思想,封装,嵌套,调用。5.利用函数调用的思想,找出两个数的最大值(Max_two)原创 2023-01-17 23:22:05 · 2504 阅读 · 0 评论 -
C语言---一维数组、二维数组:基本用法、初始化案例;冒泡排序法、简单排序法。
3.对十个数组元素依次赋值为:0,1,2,3,4,5,6,7,8,9;C语言---一维数组、二维数组:基本用法、初始化案例;冒泡排序法、简单排序法。例如:int[3][4]={{1},{2},{3}};对于题目的要求,可以先画个草图进行分析,接着再写逻辑原理。它的作用是只对各行的第1列的元素赋初值,其余元素自动为0。8.案例2:二维数组中找出最大值,并说明它在第几行第几列;4.利用冒泡排序法,对一维数组的数据进行排序。5.利用简单排序法,对数组进行排序。1.数组的引用,及基本用法。6.二维数组基本用法。原创 2023-01-05 18:09:02 · 362 阅读 · 0 评论 -
C语言---while循环、do while循环、for循环、for+continue使用技巧、for循环嵌套、4×5矩阵案例。
6.for+continue使用技巧。3.do while循环,简单演示。8.for循环嵌套:4×5矩阵案例。2.while循环案例。7.for循环嵌套思想。原创 2023-01-04 15:09:30 · 249 阅读 · 0 评论 -
C语言---if、if else 、switch case语句
【代码】C语言---if、if else 、switch case语句。原创 2023-01-03 18:10:52 · 251 阅读 · 2 评论 -
C语言---if控制语句经典案例,代数法交换值
【代码】C语言---if控制语句经典案例,代数法交换值。原创 2023-01-02 17:27:28 · 291 阅读 · 0 评论 -
C语言4---if语句
【代码】C语言4---if语句。原创 2023-01-02 16:52:22 · 75 阅读 · 0 评论 -
C语言笔记3---printf、scanf的用法
【代码】C语言笔记3---printf、scanf的用法。原创 2023-01-02 16:27:11 · 122 阅读 · 0 评论 -
C语言笔记2
C语言笔记2原创 2022-12-30 16:49:33 · 69 阅读 · 0 评论