C语言
文章平均质量分 65
C语言
南种北李
这个作者很懒,什么都没留下…
展开
-
C/C++数组默认初始化什么时候为零
数组如果定义为局部变量,默认初始化为随机值。数组如果定义为全部变量,默认初始化为0。原创 2023-03-02 17:57:03 · 637 阅读 · 0 评论 -
C语言先往int数组中以%d输入数字和字符后,再向char数组输入字符串会直接跳过。
原因是输入数字的时候,输入了数字字符和字母字符,但是它%d匹配的时候,第一个printf它会拿走缓冲区的数字字符,也就是拿走这里面的23,但是字母字符还在缓冲区留着,所以说下次scanf输入%s字符串的时候,它直接看到缓冲区有数据,它就直接匹配了,就把dsa给了b[0]。这里输入23dsa后,我并没有输入字符串,它就直接如上分别打印数字和字符串了。原创 2023-02-26 11:17:31 · 297 阅读 · 0 评论 -
动态内存管理常见错误
free只能对malloc,calloc,realloc等动态开辟的空间进行释放。正确应该定义p指针时前面加const,p不能修改,赋为NULL也不行。注意for循环里i取到了10.但malloc只开辟了10个整形空间。4.使用free释放一块动态开辟内存的一部分。free不能只释放一部分动态开辟的空间。3.对非动态开辟内存使用free释放。6.动态开辟内存忘记释放(内存泄漏)5.对同一块动态内存多次释放。2对动态开辟空间的越界访问。释放完后要赋为NULL。1不判断,直接解引用赋值。...原创 2022-07-17 16:41:53 · 485 阅读 · 0 评论 -
C语言实现动态通讯录
上图前面通过一个结构体,创建一个“容器”,用来存放人的信息,并用typedf把PeoInfo定义为一种结构体类型,上图下面是通过一个结构体,把用来存放人的信息的容器PeoInfo,以及用来记录通讯录中信息个数的count变量,和用来记录通讯录已经申请的空间可存放信息数量的capacity,放在同一个‘容器’中,并通过typedf将此结构体定义为Contact类型,便于后续程序的实现。程序的主体在test.c中完成。我们要通过C语言实现一个通讯录,通讯录里面包含人的名字,年龄,性别,电话,地址。...原创 2022-07-16 22:26:02 · 3389 阅读 · 0 评论 -
字符函数与字符串函数
2 strcpychar* strcpy(char * destination, const char * source ); 注意事项:源字符串必须以 '\0' 结束。会将源字符串中的 '\0' 拷贝到目标空间。目标空间必须足够大,以确保能存放源字符串。目标空间必须可变。 3 strcatchar * strcat ( char * destination, const char * source ); 源字符串必须以 '\0' 结束。 目标空...原创 2022-07-10 11:05:16 · 76 阅读 · 0 评论 -
C语言实现简易扫雷游戏
扫雷游戏总体来说较复杂,需要写较多函数,我们分三个文件来完成,分别是game.h,game.c,test.c。game.h主要是函数的声明,game.c主要写函数,test.c用来实现程序的主体。在此处添加完整代码在文章末尾。程序首先用menu函数打印一个菜单,这个是写在test.c文件的。void menu(){ printf("***** 1. play ****\n"); printf("***** 0. exit ****\n");}原创 2022-05-29 20:11:11 · 369 阅读 · 0 评论 -
C语言数据的存储
1数组类型char //字符数据类型 占一个字节short //短整型 占2个字节int //整形 占4个字节long //长整型 32位占4个字节,64位占8个字节long long //更长的整形 占8个字节float //单精度浮点数 占4个字节double //双精度浮点数 占8个字节类...原创 2022-05-25 14:56:01 · 137 阅读 · 0 评论 -
C语言实现简易n子棋超详细手把手(包括三子棋,五子棋)
关于简易n子棋的详细介绍(手把手讲解),包括3子棋和五子棋,用C语言实现。分文件实现。原创 2022-05-07 21:41:21 · 732 阅读 · 0 评论