自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 C++内存管理

在申请自定义类型的空间时,new和delete会分别调用构造和析构函数而malloc和free不会。

2023-08-02 11:04:59 151

原创 Linux新手小程序——进度条

只有回车的效果,光标本来在文本行最后一个字符旁,回车后光标来到了文本行开始,最终导致文本被覆盖。运行上面代码会发现结果没有立马打印出来,这是因为数据在sleep期间被暂时保存起来。但是如果加上\n,数据就会显示出来。————缓冲区有自己的行缓冲刷新策略。我们利用\r覆盖的特性实现如上代码,但是结果倒计时却不显示,原因是。们在上面说了,这是我们在这个语言环境下我们将其简化,此时的。而在c语言环境下把\n简化 其代表回车加换行。数据存放在缓冲区里,缓冲区没有被刷新。的命令行在我们执行程序下面。

2023-07-26 11:35:21 2976

原创 数据结构六大排序

数据结构六大排序

2023-02-28 16:23:33 4002 1

原创 二叉树——堆

二叉树——堆排序

2023-02-25 11:06:35 520

原创 双链表的增删查改(C语言)

双链表的增删查改

2022-11-18 14:42:59 132

原创 双向循环链表

双向链表

2022-11-15 09:40:51 224

原创 删除有序数组中的重复项

删除有序数组

2022-10-31 20:00:57 92

原创 数据结构_动态顺序表

顺序表实现

2022-10-30 16:04:49 179

原创 时间复杂度与空间复杂度

运行效率时间空间复杂度

2022-10-26 09:42:52 2321

原创 旋转数组(使用额外的数组)

旋转数组

2022-10-24 10:10:24 91

原创 动态内存管理

动态内存管理

2022-10-17 09:09:43 55

原创 sscanf/sprintf与fscanf/fprintf与scanf/printf

sscanf/sprintf与fscanf/fprintf与scanf/printf

2022-10-17 09:00:52 170

原创 C/C++中的自定义类型:枚举和联合体

C/C++中的自定义类型:枚举和联合体

2022-10-16 10:46:50 410

原创 一.字符函数和字符串函数

内存储存

2022-09-16 10:24:07 474

原创 扫雷(c语言)

目录一.代码搭建:二.代码思路:三、代码实现: 1.框架搭建: 2.菜单实现: 3.游戏实现:四、各种函数的实现:1.初始化棋盘: 2.打印棋盘: 3.布置雷: 4.排查雷后计算坐标周围雷的个数: 5.递归拓展已选位置周围的区域: 6.排查雷并判断输赢: 五、整体代码: 1.game.h 2.game.c 3.test.c 六、总结一.代码搭建:使用的vs2019编译器进行编译test.c文件实现整

2022-08-04 17:31:17 88

原创 三子棋笔记(C语言)

#include"game.h"//初始化棋盘void init_board(char board[ROW][COL], int row, int col){ int i = 0; int j = 0; for (i = 0;i < row;i++) { for (j = 0;j < col;j++) { board[i][j] = ' '; } }}//打印棋盘void...

2022-08-04 11:20:36 953

原创 5.8指针练习题

qsort(快速排序 可排序整形 字符串 结构体)头文件stdlib.h快速排序有四个参数用函数模拟实现:

2022-05-10 11:26:34 103

原创 5.3指针进阶

先从0分解void(*)()是函数指针类型(void(*)()0)就是把0强制装换成函数指针类型 0就成为此类型的函数的地址了*(void(*)()0)就是调动0的地址 再加一个()用来传参变成(*(void(*)()0)(传参)而该函数无参返回类型是void、signal是函数名后面两个函数参数第一个参数类型是int 第二个是函数指针void(*)(int)返回类型void指向一个参数为int此时可以看成void(*)(int)signal函数的返回类型也是一个..

2022-05-03 09:56:00 69

原创 5.2指针进阶

一级指针传参int*pchar*pvoid*p...二级指针传参char**p int**....可以1.二级2.一级指针变量的地址或者一级指针的数组pa是一级也可以取*pa(二级)int*a[10]={0}也可以穿arr也是二级函数指针(指向函数的指针 存放函数地址的指针)&Add就能取到函数Add的地址如果直接printfAdd不用&Add结果一样数组名!=&数组名但是函数...

2022-05-02 17:44:54 286

原创 3.19作业题

1.全局变量不初始化默认是0,sizeof返回的是无符号整形结果是大于sizeof这个操作符 算出结果是4 因为i是int 但是类型是unsigned int有符号和无符号比较会先把无符号转变成有符号 -1变成无符号数 变成一个超级大的数-1补码是32个1变无符号就补码即原码很多个1超级大2....

2022-03-29 11:02:42 108

原创 3.23指针进阶

1.指针可以指向字符串 本质是存了字符串首字符的地址ps和arr放的都是h的地址printf("%s/n,ps);printf("%s/n,arr);第一个为else成立 str1 str2放的都是字符串hello bit. 指向的都是h的地址第二个为if成立 str3,str4放的一样但是他俩的字符串是常量字符串是不能改的str1str2指向两个字符串只不过都一样str3str4指向的是一个...

2022-03-24 19:53:16 318

原创 8.9数据的储存

1.无符号数永远大于等于0其中i是有正负 但是%u使得打印出来永远是正 此循环陷入死循环2.strlen找\n结束即128+127=255打印结果为255浮点型在内存中的储存 例子 3.14159, 1E10(表示1.0*10的10次方)limits.h定义整形家族的取值范围 float.h定义浮点家族取值范围......

2022-03-22 20:12:28 82

原创 8.9数据储存

局部变量是放在栈区上的 先使用高地址 再使用低地址 数组随下标增长 地址由低变高数据的储存数据类型:1.整形 short 短整形char 字符储存的是阿斯科马值 认为他是整形 c语言不规定是否有符号取决于编译器 short默认有符号取值范围是-128到127int 默认为有符号long......

2022-03-21 16:55:55 458

原创 3.17考试讲解

c语言本身没有输入输出语句库函数不属于C语言自身的语法规则输入函数和输出函数属于库函数每个厂商的库函数的实现都不一样关于函数如何实现不重要++优先级比p高 ++的是p11和10按位或11: 101110: 1010按位或: 1011由低到高改变类型用gets()可以读取有空格的字符串vs2019用gets_s三部翻转法1.字符串整体翻转i like be...

2022-03-17 16:26:52 597

原创 3.14模拟实现字符串相关函数

strcp()char arr[110]="xxxxxxxxxx"lchar arr2[20]="hello";strcpy(arr1,arr2);printf("%s\n",arr1); // \n 为字符串结束标志//strcp(1.目标空间起始地址,2.原空间的起始地址) 模拟实现my_strcp()void my_strcp(char*dest,char*src){ w...

2022-03-14 17:27:47 308

原创 3.9调试计较

DeBug比较大Releas不能调试F11观察函数内部

2022-03-09 17:46:48 88

原创 3.8结构体初阶

结构体类型的声明(成员可以是标量数组指针其他结构体)数组:一组类型相同元素的集合结构体:也是一些值的集合 值的类型可以不同 这些值成为成员变量struct Stu{//成员变量 struct B sbchar name[20]; //名字int age; //年龄 类...

2022-03-08 19:57:34 228

原创 3.8指针和数组

指针和数组数组名就是首元素(首)地址p是首元素地址p+i就是元素地址 &arr[i]等于p+i[]符合交换律arr[2]等于2[arr]二级指针如何通过ppa找到a? *ppa==pa *pa==a **ppa==*pa==a指针数组 —— 数组 int*parr[5]; //parr[5]是...

2022-03-08 18:57:29 103

原创 3.7指针.

1.野指针((指向位置不可知,随机的,不正确的,无明确限制的))成因:1.指针未初始化int*p; //未初始化 p是一个局部的指针变量局部变量不初始化默认为随机值*p=20;...

2022-03-07 20:15:04 400

原创 3.7指针

int a=10; //int 占四个字节 有四个地址int *pa = &a; // &a是四个地址中的第一个32位:32个0或1组成的二进制序列64位:64个0或1组成的二进制序列一个内存单元——一个字节——00000.....编号——地址——指针(即指针变量)一个指针变量的大小(与类型无关): 32位 4字节64位 8字节指针类型; int*pa; :sizeof(pa)char*pc; :siz...

2022-03-07 17:23:14 60

原创 3.3操作符4

1.整形提升:按照符号位提升char a=3;char b=127;char int c=a+b;printf("%d",c);//结果为-126//a 0000..00000011//b 0000..01111111结果发生截断 只剩下八个字节 即00000011和01111111计算a+b 提升: a 00000000.....

2022-03-03 19:28:12 52

原创 3.2操作符4

1.[]下标引用操作符int arr[10]={1,2,3,4,5,6,7,8,9,10}; //此处[10]不是下标引用操作符printf("%d\n",arr[4]); //此处[]就是下标引用操作符 操作数为2 arr和42.函数调用操作符int a=10;int b=20;int ret...

2022-03-02 20:34:36 337

原创 3.2操作符3

1.&取地址int a=10;printf("%p",&a);结果是地址int *pa=&a;//*-解引用操作符 -简介访问操作符//pa用来存放地址pa就是一个指针变量...

2022-03-02 20:09:02 59

原创 3.1操作符2

1.赋值操作符int a=10;连续赋值:a=x=y+1;(从右往左把y+1赋给,把再把x赋给a);等价于:x=x+1;a=x;2.符合赋值符>>=:a=>>3;等价于a>>=3;3.单目操作符 (1) sizeof 操作数的类型长度(字节为单位) ...

2022-03-01 20:15:30 147

原创 2.28C语言操作符1

算术操作符:+ - / * %{1./:3/5结果为0 6/5结果为1(整数除法)6.0/5或6/5.0结果为1.200000(诺使用浮点型会警报最好使用double)2.%(两端必须为整数):7%3结果为1(取余数)}移位操作符(不要出现移动负几位){<<左移操作符...

2022-03-01 11:18:23 705

原创 题目:交换两个int变量的值 不能使用第三个变量 即a=3 b=5 交换之后 a=5 b=3;

方法一;int main(){int a=3;int b=5;a=a+b;b=a-b;a=a-b;return 0;}//缺点 如果数字大 可能溢出方法二;int main(){int a=3; //a011int b=5; //b101a=a^b; //a 110b=a^b; //b 011=3a=a^b; //a 101=5//再大的数字也不会...

2022-03-01 11:16:52 276

原创 数组作为函数参数

数组作为函数参数 10个数字——9个冒泡排序 n个数字 ——n-1个冒泡排序 冒泡函数:1.确定次数 int sz=sizeof(arr)/sizeof(arr[0]);2. 数组名是数组首元素的地址,但有两个例外 :1.sizeof(数组名)数组名表示整个数组——计算的是整个数组的大小 单位是字节 2.&数组名——数组名表示整个数组——去出的是整个数组的地址例如:printf(“%p\n”,&arr);1printf(“%p...

2021-12-14 19:48:31 826

原创 一维二维数组

数组:一组相同类型元素的集合。数组的创建方式:type_ arr_name [cost_n] //type_t 是指数组的元素类型 //arr_name是数组名 //const_n 是一个常量表达式,用来指定数组的大小,除c99语法支持外,一般不能用常亮,例如: int n=8; int arr[n]=0;(不正确) >如果初始化不完全 剩余元素默认为零(整形数组),如果为字符数组 则为\0,>如果未指定大小 则元素个数...

2021-12-13 20:46:17 958

原创 12.11函数嵌套

当函数定义在调用函数后面时: (1)改为先定义在调用(2声明一下 例: int main() { int a=10; int b=20; int c=Add(a,b); //声明函数 printf("5d\n",c); return 0; int Add(int x,int y) //定义函数...

2021-12-11 20:42:18 267

原创 12.11函数递归

思想:把大事化小两个必要条件:1.存在限制条件,当满足此条件时,递归便不再继续 2.每次递归调用之后愈来愈接近这个限制条件 例:输入一个四位数 把各个位的数字打印出来#include<stdlib.h>#include<stdio.h>int print(int n){ if (n > 9) { print(n/10); } printf("%d ",n%10);}int mai...

2021-12-11 20:31:07 287

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除