c
Zevin~
这个作者很懒,什么都没留下…
展开
-
常用字符串函数
目录长度不受限的字符串strlenstrcpystrcpy模拟实现strcatstrcat模拟实现strcmpstrcmp模拟实现长度受限的字符串函数strncpystrncatstrncmp其他类型的字符串函数strstrstrtokstrerror长度不受限的字符串函数strlensize_t strlen(char *str)#include<string.h>#include<stdio.h&.原创 2021-10-30 00:45:04 · 1296 阅读 · 11 评论 -
文件
文件引子文件.在我们前面学习通讯录时,程序运行起来时,可以给通讯录增删查改,但此时数据是存放在内存中,当程序退出时,通讯录的数据就消失了。就很难受,为了使得数据持久化,我们就应该把数据存放在磁盘文件,存放到数据库等方式,磁盘上关机了重启还会在,使数据持久化,因此就需要用到文件目录文件1.什么是文件2.文件名3.文件指针(文件的打开与关闭)4.文件的使用1 什么是文件在磁盘上所有的东西都是文件,c盘包括桌面的,但一般在程序设计时,分两种:程序文件和数据文件..原创 2021-10-18 22:26:31 · 400 阅读 · 8 评论 -
柔性数组
柔性数组c语言并没有柔性数组这个概念,但他又是实际存在的,结构体中最后一个成员是数组,且未规定内存大小,即可理解为柔性数组柔性数组的特点1.结构体中柔性数组的成员前面至少有一个其他成员2.sizeof计算结构体大小是不包含柔性数组的内存3.包含柔性数组成员的结构应用malloc进行开辟内存空间,并且分配的内存应该大于结构的大小,以适应柔性数组的预期大小1.struct S{ int a; int arr[];//大小未知,有的写成int arr[0]也是可以的};..原创 2021-10-13 00:18:43 · 189 阅读 · 1 评论 -
c语言实现通讯录(动态版)
c语言实现通讯录(静态)_m0_61567378的博客-CSDN博客原创 2021-10-06 15:17:12 · 204 阅读 · 3 评论 -
c语言实现动态内存分配2
c语言实现动态内存分配——错误开辟目录动态内存的错误开辟1.对null指针的解引用2.对动态开辟空间的越界访问3.使用free释放未动态开辟的空间4.使用free释放动态空间的一部分5对同一快动态开辟的空间进行多次释放6.动态开辟的空间忘记释放- 内存泄露-严重1.对null指针的解引用上代码malloc在使用时必须要先判断是否为空指针,才能使用,使用完一定要释放int main(){ int *p = (int*)malloc(100000);/.原创 2021-10-08 22:55:05 · 196 阅读 · 4 评论 -
c语言中动态内存管理(1)
1.为什么会存在动态内存分配如int arr[1000];1.像这样建立一个数组,一开始建立了这么大一个空间,可能会造成空间浪费,无法一次性用完2.静态空间开辟的大小比较固定3.对于空间的使用,只有我们在运行程序的时候才知道->因此我们就需要动态内存开辟了2. 要学习动态内存开辟,就要了解内存中的三个区这些函数都包含在:#include<stdlib.h>3.(1)malloc的使用malloc函数的定...原创 2021-10-03 16:24:57 · 140 阅读 · 1 评论 -
c语言实现通讯录(静态)
c语言实现通讯录(静态)本人第一次写博客,如有不好的地方,请见谅目录实现通讯录,1.存放1000人的信息2, 每个人的信息包含(名字,年龄,性别,电话,地址),结构体3,增加人的信息4,删除人的信息5,修改人的信息6,查找指定人的信息7,排序人的信息后续会发布动态版的通讯录开始实现通讯录首先要先初始化信息,可在头文件里面实现typedef struct peoinfo//一个人的信息{ char name[max_name];//[]里面的改麻烦,.原创 2021-10-03 11:51:05 · 854 阅读 · 2 评论 -
宏的运用接续符\
接续符\就是让一行代码可以在在多行上写,在宏的使用上的时候,可以提高代码的可读性原创 2022-06-22 18:26:40 · 150 阅读 · 0 评论 -
内存函数
memmove可以处理内存重叠的问题,memcpy不可以处理内存重叠的问题,memcmp比较内存的大小memset,int main(){ int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; // 1,2,1,2,3,4,5,8,9,10 int arr1[10] = { 0 }; memcpy(arr1, arr, 20); memmove(arr + 2, arr, 20); float a...原创 2021-11-20 00:57:22 · 67 阅读 · 0 评论 -
分支与循环
目录找最大公约数法1法2求最小公倍数判断是否是素数法1法2模拟用户登录界面找两个数的最大公约数法1法2辗转相除法求最大公约数判断一个数是否是素数模拟实现用户输入密码登入界面找两个数的最大公约数法1int main(){ int m, n; scanf("%d %d", &m, &n); int ret = m < n ? m : n;//求得到m和n中较小的那个数 while (1) { ...原创 2021-11-18 10:47:03 · 202 阅读 · 1 评论