C语言初阶
文章平均质量分 56
主要是写一些c语言的初阶和进阶语法,便于巩固!
接受平凡 努力出众
执行力,就是生命力!
展开
-
动态内存管理
目录1.为什么存在动态内存管理2.动态内存函数的介绍2.1malloc和free2.2calloc2.3realloc3.常见的动态内存错误4.柔性数组4.1柔性数组的概念4.2柔性数组的特点4.3柔性数组的使用4.4柔性数组的的优势1.为什么存在动态内存管理当然我们已经掌握的内存开辟方式:int a=10;//局部变量-在栈空间上开辟了四个空间int g_a=10;//全局变量-静态区但是上述的开辟空间的方式有两个特点...原创 2021-09-22 21:19:11 · 209 阅读 · 6 评论 -
自定义类型:结构体,枚举,联合
目录一.结构体1.结构类型的声明1.1结构的基础知识1.2结构的声明1.3特殊的声明2.结构体的自引用3.结构体变量的定义和初始化4.结构体内存对齐4.1结构体内存对齐的规则4.2结构体大小的计算4.3内存对齐原因4.4修改默认对齐数5结构体传参6结构体位段6.1什么是位段6.2位段的内存分配6.3位段的跨平台问题二.枚举1.枚举定义2.枚举的优点三.联合体1.联合类型的定义2.联合的特点3.联合大...原创 2021-09-20 20:18:44 · 237 阅读 · 7 评论 -
2021-08-11函数指针
杨氏矩阵有一个数字矩阵,矩阵的每行从左到右是递增的,矩阵从上到下是递增的,请编写程序在这样的矩阵中查找某个数字是否存在。要求:时间复杂度小于O(N);#include<stdio.h>void find_k(int a[3][3], int k, int x, int y){ //根据矩阵递增的特点,从右上角开始时间复杂度会相对较小; int n= 0; int m = y - 1; //横坐标不能大于3,纵坐标要大于等于0; while (n < x &原创 2021-09-18 07:53:05 · 147 阅读 · 0 评论 -
2021-08-10字符指针
1.字符串左旋实现一个函数,可以左旋字符串中的k个字符。例如:ABCD左旋一个字符得到BCDAABCD左旋两个字符得到CDAB分析:我们先考虑左旋一个字符然后进行for循环满足题目要求的左旋次数,先将字符‘A’保存起来,然后将'BCD‘依次向前移,最后再将’A‘放进最后一位即可满足条件,下面我们进行操作.代码如下:void my_leftmove(char* arr, int m){ int len = strlen(arr); int i,j; for (i = 0;原创 2021-09-17 16:54:06 · 126 阅读 · 0 评论