![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c语言
e我所欲也
在很窄的胡同里长跑
展开
-
【C语言】自定义类型 结构体 枚举 联合
结构体的基础知识结构体是一些值的集合,这些值称为成员变量。结构体的每个成员可以是不同类型的变量。结构体的声明定义一个学生的结构体struct Stu{ char name[20];//名字 int age;//年龄 char sex[5];//性别 char id[20];//学号};//分号不能丢struct Stu s = {"zhangsan", 20,"man",1...原创 2019-11-23 15:43:46 · 486 阅读 · 0 评论 -
【C语言】strncpy,strncat,strncmp指定具体几个字符单位来操作的字符串函数
strncpy,strncat,strncmp指定具体几个字符单位来操作的字符串函数#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#include<string.h>#include<assert.h>//strncpy 指定几个字节的字符拷贝char* my_strncpy(char* dst,...原创 2019-11-05 19:53:52 · 564 阅读 · 0 评论 -
C语言strlen.strcpy.strcmp.strstr.memcpy.memove 字符串函数和内存函数的模拟实现
strlen.strcpy.strcmp.strstr.memcpy.memove五个函数的模拟实现#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#include<string.h>#include <stdio.h>#include <string.h>#include <as...原创 2019-11-04 22:38:42 · 380 阅读 · 0 评论 -
【C语言】 指针与数组和函数的组合
什么是指针?指针就是个变量,用来存放地址,地址唯一标识一块内存空间。指针的大小是固定的4/8个字节(32位平台/64位平台)。指针是有类型,指针的类型决定了指针+ -整数运算的步长,指针解引用操作的时候的权限。指针的类别区分//一定要注意 [ ]和()与*的操作符优先级,[ ]和()的优先级要高于*号的,明白这个就好区分和使用指针与数组和函数的结合问题字符指针在指针的类型中我们...原创 2019-10-15 19:50:00 · 822 阅读 · 0 评论 -
C语言 链栈的基本功能和详细代码(包含注释)
1.栈的概念及结构栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。出栈:栈的删除操作叫做出栈。出数据也在栈顶我们可以把栈想象成手枪子弹弹夹,一颗颗按进去后,先打出来的绝对是最后放进去的那...原创 2020-01-26 22:51:22 · 864 阅读 · 0 评论 -
C语言 队列 的基本功能和详细代码(含详细注释)
队列的概念及结构队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出的规则FIFO(First In First Out)入队列:进行插入操作的一端称为队尾出队列:进行删除操作的一端称为队头其实队列换一种说法就是我们文明生活中的 排队问题,不管干什么一般总是遵守先来后到的,就是先来的(对头)先获取到资源,后来的不准插队,只能在最后面(队尾)排队等待。...原创 2020-01-26 22:05:14 · 17365 阅读 · 6 评论 -
【C语言】判断一个字符串是否为另一个字符串旋转后的
判断一个字符串是否为另一个字符串旋转后的//int is_rotate_str(char* str, char* rt_str)//{// int len = strlen(str);// char* double_str = (char*)malloc(len * 2 + 1);// strcpy(double_str, str);// strcat(double_str, str...原创 2019-11-07 13:42:14 · 354 阅读 · 0 评论 -
【C语言】左旋字符串 两种解法
左旋字符串(一般解法)#include <stdio.h>#include <string.h>#include <assert.h>#include <stdlib.h>//void rotate_left(char* str, int k)//{// assert(str);//// while (k--)//控制旋转次数/...原创 2019-11-07 13:28:10 · 449 阅读 · 0 评论 -
c语言 进阶 strlen函数的三种实现
C语言中自己实现的strlen函数,三种方法strlen函数介绍size_t strlen ( const char * str );1.字符串已经 ‘\0’ 作为结束标志,strlen函数返回的是在字符串中 ‘\0’ 前面出现的字符个数(不包含 ‘\0’ )。2.参数指向的字符串必须要以 ‘\0’ 结束。3.注意函数的返回值为size_t,是无符号的( 易错 )4.学会strlen...原创 2019-10-18 23:07:08 · 703 阅读 · 0 评论 -
C语言 数组名的意义 以及sizeof与strlen对数组类型的解析
`**数组名的意义:**1. sizeof(数组名),这里的数组名表示整个数组,计算的是整个数组的大小。2. &数组名,这里的数组名表示整个数组,取出的是整个数组的地址。3. 除此之外所有的数组名都表示首元素的地址arr与&arr的了解与区分arr是数组名,数组名表示数组首元素的地址。&arr 表示的是数组的地址,而不是数组首元素的地址。(虽然值是一样的)...原创 2019-10-15 22:03:56 · 1465 阅读 · 0 评论 -
C语言 传参问题
**函数传参必定要形成临时变量*传参又分为传值传参和传址传参传值传参:形参对实参值的临时拷贝,实质上只是发生交换的只是这个临时变量,实参值并没有变化传址传参:形参指针指向实参的地址,传地址后,解引用后交换地址里的内容,实参完成了交换//传值传参int swap(int x, int y){ int tmp = 0; tmp = x; x = y; y = tmp;}...原创 2019-10-13 16:24:07 · 601 阅读 · 0 评论 -
C语言 初阶指针
指针是什么?在计算机科学中,指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。意思是通过它能找到以它为地址。举个例子:一栋宿舍里的门牌号就可以联想成指针,一个宿舍对应一个门牌号,并且门牌号是连续相邻的,如果我们想知道某个学生...原创 2019-10-13 15:49:50 · 469 阅读 · 0 评论 -
C语言的表达式求值问题(整型提升)
表达式求值表达式求值的顺序一部分是由操作符的优先级和结合性决定。同样,有些表达式的操作数在求值的过程中可能需要转换为其他类型。隐式类型转换C的整型算术运算总是至少以缺省整型类型的精度来进行的。为了获得这个精度,表达式中的字符和短整型操作数在使用之前被转换为普通整型,这种转换称为整型提升。(为什么要整型提升?)整型提升的意义:表达式的整型运算要在CPU的相应运算器件内执行,CPU内整型...原创 2019-10-12 20:34:34 · 552 阅读 · 0 评论 -
c语言 位操作符和逻辑操作符
位操作符& 按位与| 按位或^ 按位异或注:他们的操作数必须是整数。& 两个整数比特位有假(0)就为假(0),只有全为真(1)就为真(1)举个例子:老师叫两个学生来办公室,说张三与(&)李四过来,如果只一个人过去就不满足老师说的话(为假),必须两个人都过去(为真)。| 两个整数比特位只要有真就为真,只有全为假(0)就为假(0)举个例子:老师叫两个学生来...原创 2019-10-12 20:03:10 · 1178 阅读 · 2 评论 -
C语言 调整数组使奇数全部都位于偶数前面 杨氏矩阵
1.调整数组使奇数全部都位于偶数前面。输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。//杨氏矩阵有一个二维数组.数组的每行从左到右是递增的,每列从上到下是递增的.在这样的数组中查找一个数字是否存在。时间复杂度小于O(N);...原创 2019-10-10 19:57:53 · 293 阅读 · 0 评论 -
c语言进阶学习 第一节学习总结
#c进阶学习第一节###数据在内存中的存储1.数据类型介绍整型:字符类型char 短整型short 整型int 长整型long浮点型:单精度浮点型float 双精度浮点型double构造类型:数组 结构体 枚举 联合(共用体)指针类型:int* pi ; char* pc ; float* pf; viod* pv;空类型:表示无类型(空类型)2.--...原创 2019-09-27 17:40:07 · 533 阅读 · 4 评论 -
C语言 三子棋小游戏
三子棋这是主函数和菜单#define _CRT_SECURE_NO_WARNINGS 1#include"game.h"void menu(){ printf("********0.exit********\n"); printf("********1.play********\n"); printf("**********************\n");}void g...原创 2019-09-20 22:34:46 · 206 阅读 · 0 评论