C语言
Ferlan
天下大事,必作于细!
展开
-
排序思想,代码实现和优缺点比较
void insert_sort(int *a, int size){ //插入排序: //每一步将一个待排序的元素,插入到前面已经有序的一组元素中, //直到元素排完为止。 assert(a); assert(size>0); for (int i = 1;i < size;i++) {原创 2018-06-14 23:59:53 · 589 阅读 · 0 评论 -
C语言操作符
1 算数操作符 + - * / %注1:除%外,其它算数操作符均可作用于整数和浮点数;注2:/两边都是整数时,结果为整数;有一个为浮点数时,结果为浮点数;注3:%两边必须为整数,结果为除法取余。2 移位操作符(1)左移>>:规则:左边抛弃,右边补0 注:相当于给该数乘2。(2)右移<<:规则:算数右移:右边丢弃,左边补符号位; 逻辑右移:原创 2017-11-22 21:07:08 · 248 阅读 · 0 评论 -
如何使用数组参数?
如何使用数组参数?如果一个函数以一维数组为参数,我们可以这样声明这个函数 void func(int* a) ; void func(int a[]) ; void func(int a[3]) ;实际上,这三种形式是等价的,在使用数组做参数时,编译器会自动将数组名转换为指向数组第一个元素的指针,为什么呢?这要从参数的传递方式说起,参数有三种传递方式,按值传递,按指针传递,按引用传转载 2017-11-15 19:55:21 · 3274 阅读 · 0 评论 -
二阶指针
欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46629065一、概念在如下的A指向B、B指向C的指向关系中:首先C是”一段内容”,比如你用malloc或者new分配了一块内存,然后塞进去”一段内容”,那就是C了。C的起始地址是0x00000008。B是一个指针变量,其中存放着C的地址,但是B也要占空间的转载 2017-11-13 19:51:44 · 1422 阅读 · 0 评论 -
return 1和return 0的区别
return 0 代表程序正常退出,return 1代表程序异常退出!return -1::表示返回一个代数值,一般用在子函数结尾。按照程序开发的一般惯例,表示该函数失败; 使用return 语句可以返回一个变量内的值或一个指针,也可用return 0,表示返回为空。return 代表调到函数外,return 0代表函数正常终止return 1代表函数非正常终止...原创 2017-11-13 19:33:21 · 27993 阅读 · 0 评论 -
2017-12-8 test8
#define _CRT_SECURE_NO_WARNINGS 1#include&amp;lt;stdio.h&amp;gt;int main() { /*1. 5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果 A选手说:B第二,我第三; B选手说:我第二,E第四; C选手说:我第一,D第二; D选手说:C最后,我第三; E选手说:我第四,...原创 2017-12-08 16:39:07 · 237 阅读 · 0 评论 -
通讯录
#define _CRT_SECURE_NO_WARNINGS 1#include&amp;lt;stdio.h&amp;gt;#include&amp;lt;windows.h&amp;gt;#include&amp;lt;assert.h&amp;gt;struct stu{ char name[5]; char sex[2]; int age;原创 2018-03-17 17:00:47 · 229 阅读 · 0 评论 -
指针数组,数组指针,函数指针,函数指针数组,指向函数指针数组的指针
指针数组:指针数组可以说成是”指针的数组”,首先这个变量是一个数组,其次,”指针”修饰这个数组,意思是说这个数组的所有元素都是指针类型,在32位系统中,指针占四个字节。 例如int *arr1[10];是一个具有10个元素的数组,每个元素均为指向一个整型的指针。指针数组的使用首先要明确,数组传参时会发生降级,降级成指向其内部元素类型的指针。 而指针数组内部元素均是指针,指向指针...原创 2018-02-21 12:16:20 · 244 阅读 · 0 评论 -
五子棋 test10
自制五子棋(注.本五子棋游戏完全由C语言编写)简单思路:1.定义二维数组 2.构建棋盘并初始化 3.输出棋盘 4.建立一个死循环: 玩家走(判断落点合法性), 输出棋盘 判断玩家赢、平局, 电脑走(判断是否已经走过), ...原创 2017-12-04 21:51:07 · 403 阅读 · 0 评论 -
扫雷游戏 test9
注:本扫雷游戏完全由C语言编写1.游戏界面为15*15格子状地图2.根据菜单界面 选择进入游戏或退出3.选择难度界面 分为easy hard hell 3种难度,地图对应随机生成20,30,45颗地雷4.首次排雷不会触雷5.每次输入排雷坐标后,若未触雷则检测周围8个方格的地雷总数,为0则翻开,非0则在该坐标处输出8个方格中地雷总数,并对周围的方格递归遍历6.每次...原创 2017-12-07 02:30:36 · 507 阅读 · 0 评论 -
markdown 快捷键及语法的体验
快捷键及写法粗体 (Ctrl+B) code斜体 (Ctrl+I) code引用 (Ctrl+Q) code代码块 (Ctrl+K) “java public static void main(String[] args){} “标题 1, 2, 3 (Ctrl+1, Ctrl+2, Ctrl+3)code #,## code ##,### code列表 (Ctrl+U a转载 2017-12-08 16:49:50 · 267 阅读 · 0 评论 -
贪吃蛇
UI.h#pragma oncestruct UI{ int margintop;//墙离上窗口的距离 int marginleft;//墙离左窗口的距离 int gamewidth;//游戏里宽度上显示块个数 int gameheight;//游戏里高度上显示块个数 int windowWidth;//整个窗口的宽度 int win...原创 2018-05-17 20:24:14 · 227 阅读 · 0 评论 -
哈希表--开散列(哈希桶,拉链法)
functions.h#include&amp;amp;lt;stdio.h&amp;amp;gt;#include&amp;amp;lt;assert.h&amp;amp;gt;#include&amp;amp;lt;windows.h&amp;amp;gt;typedef int KeyType;//关键字类型typedef int ValueType;//个数类型原创 2018-06-01 16:09:30 · 369 阅读 · 0 评论 -
结构体,结构体内存对齐,位段,枚举,联合知识总结
结构体结构体是一种自定义类型,其内部可以含多种数据类型。 例如:struct x //结构体标签x可以省略{ int num[10]; char name[5]; int age;}stu,*p; /*结构体名称stu可以省略,p是 结构体指针,最后的分号不可以省 ...原创 2018-03-10 00:05:19 · 228 阅读 · 0 评论 -
2018-2-21 test22
模拟strncpy#include&lt;stdio.h&gt;#include&lt;windows.h&gt;#include&lt;assert.h&gt;void my_strncpy(char *arr, char *ch, int size){ assert(arr); assert(ch); while (size--) {原创 2018-02-21 15:54:43 · 258 阅读 · 0 评论 -
2018-2-7 test19
模拟strcpy#define _CRT_SECURE_NO_WARNINGS 1#include&lt;stdio.h&gt;#include&lt;windows.h&gt;#include&lt;assert.h&gt;char* my_strcpy(char* x, char* y){ assert(x); assert(y); cha原创 2018-02-09 13:42:06 · 246 阅读 · 0 评论 -
可变参数解析
使用可变参数,需要添加 。 实现可变参数的方法就是把函数的第一个参数设为后续可变参数的个数。然后使用 va_list , va_start , va_arg , va_end等宏函数对可变参数进行操作。步骤va_list(arg) //声明一个va_list变量argva_start(arg,x) //x为第一个确定的参数,va_st原创 2018-02-02 18:18:14 · 289 阅读 · 0 评论 -
栈帧步骤解读
各寄存器,指令: ebp:栈底指针 esp:栈顶指针 eip:程序计数器,为cpu指向下一条应该执行的语句 move:后值赋给前值 push:入栈 pop+ ? :出栈,并将出栈内容赋给后面的寄存器 call:(1)将当前call命令的下一条指令的地址以入栈的方式保存起来,用作恢复 (2)以jmp方式跳转 ret:将当前元素进行出栈处理,并将值赋给eip下面以原创 2017-12-24 13:48:40 · 1067 阅读 · 0 评论