c
baixian110
这个作者很懒,什么都没留下…
展开
-
C语言实现扫雷游戏
整个代码实现是模仿B站up鹏哥说C语言完成的,有细节不明白的可以直接去看B站的视频。这里附上我的相关代码。原创 2023-04-17 21:59:40 · 81 阅读 · 0 评论 -
数组详解(含二维数组)
bubble_sort(arr)中arr表示的首元素的地址,虽然与数组其实地址是相同的,但是在bubble_sort中形参 arr[]实际只有一个元素,因为只传了一个元素过来,所以bubble_sort函数里面sizeof(arr)的返回值是1.这样是违规的,系统也不会把10个元素默认赋值为0,在VS中这样写过后实际上赋10个随机值,一旦我们人为赋值了第一个元素,系统就认为我们初始化了,所以剩下的我们没有人为赋值的元素也会赋值为0;这两种初始化是不同的,后者实际是四个元素,是一个字符串,多一个\0。原创 2023-04-16 00:00:54 · 557 阅读 · 0 评论 -
if else分支循环介绍
a= 0是不符合第一个if的判断语句的,所以根本不会执行if 也不会执行后面的else(这里要注意,这里if else没有用大括号括起来,但是还是默认全部是第一个if的子语句,因为系统默认if else是一条语句而不是两条语句,因为if和else每次只会有一个执行,永远不会同时执行。上面这段代码很多同学可能会认为输出的是哈哈,但实际是什么都不会输出,因为这里的else一定是和第二个if配对的(不要看它和第一个if齐平),实际在用vs2019时,系统会自动改成和第二个if对齐。与下面的代码是如出一辙的。原创 2023-04-14 10:51:12 · 156 阅读 · 0 评论 -
不使用strlen函数,不允许创建临时变量怎么求字符串长度
my_strlen(“cdef”)+1+1 = my_strlen(“def”)+1+1+1 以此类推。首先我们先来看看不使用strlen函数,我们自己怎么求字符串长度呢。但是这个程序里我们是创建了一个临时变量count的,我们从递归的角度出发。原创 2023-04-14 10:49:41 · 299 阅读 · 0 评论 -
C语言实现给定正整数1234,顺序输出各个位上的数字
/方法一:12334逆序出去4321是非常方便的,直接取取再取商即可,然后数组逆序输出。//例如给定1234,分别顺序打印出1、2、3、4。//给定一个数字,顺序打印各个位上的数。//方法二:采用递归函数的思想。原创 2023-04-14 10:11:37 · 1412 阅读 · 0 评论 -
基于VS2019的C语言静态库的创建,导入
这也是为什么要把函数声明和定义放两个文件里面,别人调用只知道我的函数的声明,但不是具体的实现方法。比如实现一个计算器,甲可以负责加的部分,也就负责add.h和add.c,已负责减,也就是负责sub.h和sub.c等等。函数的声明是放在一个.h的头文件里,所以,我们创建一个新的解决方案,就假设这是一个程序员写的某一个模块的代码,创建一个.h文件,将函数的声明放在这里面。如果这个模块是我们自己用,也就是在同一个解决方案里面用,那么,只需要引用我们自己创建的这个库函数就行,而引用自己的库函数模板是。原创 2023-04-14 00:54:29 · 1323 阅读 · 0 评论 -
数组传参的注意事项
这一句中arr作为实参传入函数,但是arr表示的是该数组首元素的地址。所以实际上在is_binary_search函数中的arr[]形参实际只有一个元素arr[1],所以length的值求出来是1,并非是9。所以第二种程序是错误的。所以数组传参一定要注意,传的参数仅仅是首元素的地址,并不能代表整个数组。将l求length的语句放到is_binary_search里面去,这样只需要传两个参数。我们先来写一个折半查找的程序。根本原因在于数组传参有问题。此时如果我们改动一下。原创 2023-04-13 23:47:03 · 69 阅读 · 0 评论 -
在vs中用C语言生成随机数(包含rand,srand,time函数详解)
用C语言在vs2019中使用rand‘srand'time函数生成随机数原创 2023-04-13 09:33:12 · 3142 阅读 · 0 评论 -
编写代码,演示多个字符从两端向中间移动,逐步显示
【代码】编写代码,演示多个字符从两端向中间移动,逐步显示。原创 2023-04-12 20:47:44 · 60 阅读 · 0 评论 -
strncmp()详解
strncmp()长度限定的字符串比较函数strncmp()有三个参数:两个比较字符串的指针,一个无符号数代表比较的字符个数,返回类型为一个大于零小于零或等于零的整型作用:将C 字符串str1 的最多num 个字符与 C 字符串str2 的字符进行比较。 此函数开始比较每个字符串的第一个字符。如果它们彼此相等,则继续往下比较,直到字符不同,或者直到达到终止空字符,或直到两个字符串中的num 个字符匹配,以先发生者为准。返回类型:...原创 2021-06-10 10:04:04 · 10816 阅读 · 1 评论 -
strncat()详解
strncat()长度限制的字符串追加函数C++ reference中对于strnca函数的定义输入三个参数:源字符串指针,目标字符串指针,追加长度(类型为size_z,可以理解为无符号数)返回类型为一个字符串指针作用:1.将source的前num 个字符附加到destination,再加上一个终止空字符。 (这个尤其重要,因为这个与strncpy()函数是不同的,strncpy()是加上多个’\0’知道字符数为num)2.如果source 中C 字符串的长度小于num,则只复制终止空字符之前原创 2021-06-10 09:33:47 · 1214 阅读 · 0 评论 -
strncpy()函数详解
srtncpy()函数长度受限制的字符串拷贝函数如上图,在C++reference中,strncp有如下三个参数:两个字符指针,一个size_t(这里就是无符号数的意思)类型的数,返回类型也为字符指针。这里可以与strcpy()对比一下作用:1.拷贝num个字符从源字符串到目标空间。2.如果源字符串的长度小于num,则拷贝完源字符串之后,在目标的后边追加’\0’,直到num个。这里又几点需要注意:有关于源字符串长度,目标字符串长度和拷贝长度三者的关系而确定拷贝出的字符形式;具体见下图m原创 2021-06-10 08:37:57 · 2107 阅读 · 0 评论 -
strcmp() 相关知识点
strcmp() 相关知识点字符串的比较是千万不可以用“abdce” == “cdefg”这样的形式去写的例如`#include<stdlib.h>#include<stdio.h>int main(){ char* arr1 = "abcdef"; char* arr2 = "cdefgh"; if("abcdef" == "cdefgh" )//这里实际上比较的是arr1的首字符和arr2的首字符,这里是不等的,实际上即使前面一个字符相等,后面只要有一个字符不等原创 2021-06-09 16:59:12 · 211 阅读 · 0 评论 -
my_strcat()实现
#include<stdlib.h>#include<string.h>#include<assert.h>char * my_strcat(char* dest,char* src){char *ret = dest;assert(dest && src);//1.找到目的字符串的’\0’while(*dest != ‘\0’){dest++;}//2.追加while(*dest++ = *src++){}return re原创 2021-06-08 21:34:52 · 159 阅读 · 0 评论 -
my_strcpy()实现——strcpy()相同功能
#include<stdlib.h>#include<string.h>#include<assert.h>char *my_strcpy(char* dest,const char * src)//const 修饰保证被复制的字符串不被改变{ char* ret = dest;//保留dest的地址,方便返回 assert(dest != NULL);//增加断言,保证输出的字符首地址不是空的 assert(src != NULL); while(*de原创 2021-06-08 21:02:03 · 113 阅读 · 0 评论 -
strlen()的三种等价实现方法——my_strlen()
#include<assert.h>#include<stdlib.h>#include<stdio.h>//my_strlen()的三种实现方法//计数器实现int my_strlen1(const char* str){ int count = 0; assert(str != NULL); while(*str != '\0') { count++; str++; } return count;}//指针直接实现int my_s原创 2021-06-07 21:09:05 · 194 阅读 · 0 评论 -
三子棋实现代码(多子祺同样适用)
三子棋实现写在最前:新手一枚,主要是想上传代码记录自己的学习历程。也祝看到这篇文章的小伙伴可以学业有成!事业顺利!创建三个文件,两个C++源文件,test.c、 game.c,前者用来存放测试代码,后者用来存放主要的游戏实现代码再创建一个头文件代码 game.h,用来存放各种声明和定义1.game.h代码#include<stdio.h>#include<stdlib.h>#include<time.h>#define ROW 3//在头文件里定义行原创 2021-03-21 22:13:37 · 120 阅读 · 0 评论