- 博客(55)
- 收藏
- 关注
原创 c到c++的拓展2
#include <iostream>using namespace std;// 1、函数的默认参数:// 允许形参带一个默认的值,当函数调用的时候没给形参传值,使用默认的值int add(int a, int b = 10){ return a+b;}// 注意:// 1、如果函数有一个参数有默认值,则该参数右边的所有参数都要有默认值void fu...
2019-01-23 20:08:52
181
原创 c到c++的拓展
#include <iostream>using namespace std;int main1(){ register int a = 10; // 如果对一个寄存器变量进行 & 操作 // 则变量将不在是一个寄存器变量,而是普通变量 printf ("&a = %p\n", &a); return 0;...
2019-01-23 20:07:49
250
原创 标准输入输出
// C++ 的标准输入输出头文件 input output stream#include <iostream>using namespace std;// 标准输出int main1(){ // cout 类似于 printf, 作用是往屏幕打印数据 // 区别:cout 是个变量 printf 是个函数 // << : 左移...
2019-01-23 20:05:27
225
原创 命名空间的使用
#include <stdio.h>#include <cstdio>// 命名空间的定义:定义一块命名空间,名字叫 NameAnamespace NameA{ // 原来全局空间可以做的事情,命名空间都可以做:定义变量、函数、宏、结构体、枚举.... int g_a; int g_b; int add(int a, int ...
2019-01-20 23:18:28
153
原创 共用体判断大小端模式
使用共用体判断大小端模式: 如果我们将0x1234abcd 写入到以0x0000 开始的内存中,则Little endian和Big endian 模式的存放结果如下: 大端模式:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。小端模式:字数据的高字节存储在高地址中,而字数据的低字节则存放在低地址中。 // 如果是小端模式,返回ture,否则返...
2019-01-05 00:05:37
908
原创 关键字——static
在局部静态变量前面加上关键字static,该局部变量便成了静态局部变量。静态局部变量有以下特点:(1)该变量在全局数据区分配内存(2)如果不显示初始化,那么将被隐式初始化为0(3)它始终驻留在全局数据区,直到程序运行结束(4)其作用域为局部作用域,当定义它的函数或语句块结束时,其作用域随之结束。 在全局变量前面加上关键字static,该全局变量变成了全局静态变量。全局静...
2019-01-03 23:21:47
114
原创 关键字 const
const用来定义只读变量,具有不可变性。 const int * p; // p可变,p指向的对象不可变int const * p; // p可变,p指向的对象不可变int * const p; // p不可变,p指向的对象可变const int * const p; // 指针p和p指向的对...
2019-01-02 23:07:38
117
原创 堆和栈的区别
1、管理方式不同栈编译器自动管理,无需程序员手工控制;而堆空间的申请释放工作由程序员控制,容易产生内存泄漏。2、空间大小不同栈是向低地址扩展的数据结构,是一块连续的内存区域。这句话的意思是栈顶的地址和栈的最大容量是系统预先规定好的,当申请的空间超过栈的剩余空间时,将提示溢出。因此,用户能从栈获得的空间较小。 堆是向高地址扩展的数据结构,是不连续的内存区域。因为系统是用...
2018-12-28 21:59:40
236
1
原创 指针注意事项
指针(Pointer)就是内存的地址,C语言允许用一个变量来存放指针,这种变量称为指针变量。指针变量可以存放基本类型数据的地址,也可以存放数组、函数以及其他指针变量的地址。 程序在运行过程中需要的是数据和指令的地址,变量名、函数名、字符串名和数组名在本质上是一样的,它们都是地址的助记符:在编写代码的过程中,我们认为变量名表示的是数据本身,而函数名、字符串名和数组名表示的是代码块或...
2018-12-27 20:34:30
316
原创 快速排序
#include <stdio.h>void mySwap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void myPrint(int *a, int len){ int i; for (i = 0; i < len; i++) { ...
2018-12-27 09:49:10
105
原创 归并排序
#include <stdio.h>void mySwap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void myPrint(int *a, int len){ int i; for (i = 0; i < len; i++) { ...
2018-12-25 23:07:15
128
原创 堆排序
#include <stdio.h>void mySwap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void myPrint(int *a, int len){ int i; for (i = 0; i < len; i++) { ...
2018-12-24 20:51:30
96
原创 希尔排序
#include <stdio.h>void mySwap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void myPrint(int *a, int len){ int i; for (i = 0; i < len; i++) { ...
2018-12-24 00:01:29
139
原创 二分插入排序
#include <stdio.h>void mySwap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void myPrint(int *a, int len){ int i; for (i = 0; i < len; i++) { ...
2018-12-22 23:06:12
458
原创 插入排序
#include <stdio.h>void mySwap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void myPrint(int *a, int len){ int i; for (i = 0; i < len; i++) { ...
2018-12-22 00:00:52
97
原创 选择排序
#include <stdio.h>void mySwap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void myPrint(int *a, int len){ int i; for (i = 0; i < len; i++) { ...
2018-12-20 09:11:27
266
1
原创 冒泡排序改进-鸡尾酒排序
#include <stdio.h>void mySwap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void mySort(int *a, int len){ int i, j; for (i=0; i < len-1; i++) // 将最大元素沉底...
2018-12-19 20:52:32
138
原创 冒泡排序
#include <stdio.h>void mySwap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void myPrint(int *a, int len){ int i; for (i = 0; i < len; i++) { printf ("%4d", ...
2018-12-19 20:51:27
118
原创 Vim
文件编辑 1、图形界面的编辑器: gedit2、终端文件编辑: vi ----> vim (vi加强版)一、命令行模式1、跳转 G 跳到最后一行 gg 回到第一行 nG 跳到第 n 行 n+方向键 移动...
2018-12-17 23:08:45
159
原创 文件相关操作命令
1、创建文件:touch 文件 mkdir 文件夹 2、文件删除(rm删除的文件很难恢复)rm 文件名 (删除文件会有提示)rm -f 文件名 (强制删除文件不提示)rm -r 目录(文件夹)(删除文件夹会有提示)rm -rf 目录(文件夹)(删除文件夹不提示) ...
2018-12-16 22:04:38
175
原创 文件的类型和权限
1、文件的类型 查看文件详细信息的是,第一个字符代表的是文件的类型: 小数点: 代表普通文件 d : 代表文件夹(目录) l : 链接文件 c : 字符设备文件 b : 块设备文件 2、文件的权限类型后面的9个字符代表文件的权限文件的权限:可读、可写、可执行r ...
2018-12-15 23:52:02
1209
原创 停车场管理系统
public.h#ifndef _PUBLIC_H_#define _PUBLIC_H_#include <time.h>typedef struct _Data{ int park_place;//车位号 int park_num;//停车号 int plate_num;//车牌号 time_t start;//1900年到现在的秒数}Data;type...
2018-12-14 23:35:25
363
原创 计算器
main.c#include <stdio.h>#include "stack.h"#include <string.h>// 判断是否入栈BOOL jud(Stack *s, int ope){ if(Empty(s)) return TRUE; int top = GetTop(s); switch(top) { case '+...
2018-12-13 22:09:09
120
原创 单链表实现通讯录
main.c#include <stdio.h>#include "AddressList.h"int main(){ menu(); return 0;}AddressList.c#include <stdlib.h>#include "AddressList.h"#include <stdio.h>int g_id...
2018-12-13 09:16:35
439
原创 C语言编程注意事项3.0
常见的内存错误及对策 1、结构体成员指针未初始化struct student{char *name;int score;}stu, *pstu; int main1(){//stu.name =(char *)malloc(sizeof(char)) ;strcpy(stu.name, "Jimy");stu.score = 99;retur...
2018-12-11 20:46:48
512
原创 C语言小程序之字符转换加密
#include <stdio.h>#include <string.h>// 将一个不定长的字符串转换为一个定长的数字// 输入:字符串// 输出:16位数字// 转换格式:将字符串分成n组,每组16个字符// 将n组字符串相应位置的字符相加,如果值不是个数,则各个位再进行相加// 直到为个位数为止,最终得出的16个数字即要求输出的数字int mai...
2018-12-10 19:25:00
868
原创 C语言编程注意事项2.0
1、优先级2、将指针指向一个地址:int *p = (int *)0xabcdef;3、数组a不能作为左值(被赋值);4、int main(){ int a[4] = { 1, 2, 3, 4 }; int *ptr1 = (int *)(&a + 1); int *ptr2 = (int *)((int)a + 1); printf( "%x,%x...
2018-12-09 22:59:36
148
原创 数据结构之链表
LinkList.h#ifndef _LINKLIST_H_#define _LINKLIST_H_typedef enum {TRUE, FALSE, ERROR} BOOL;typedef int Data;typedef struct _node{ Data data;//数据域 struct _node *next;//指针域,指向链表的下个结点}Node;...
2018-12-09 20:29:04
94
原创 数据结构之顺序表
Seq.h#ifndef _SEQ_H_#define _SEQ_H_#define INIT_SIZE 1#define ADD_SIZE 5typedef enum {TRUE, FALSE, ERROR} BOOL;typedef int Data;typedef struct _seq{ Data *pData; //顺序表的最大存储空间 int maxSi...
2018-12-07 18:39:38
142
原创 Linux函数库
静态库 要被包含到源程序中的库优点 运行速度快缺点 占用系统资源比较多使用的场合 对时间要求很高的场合静态库的制作:1、把所有的源程序(.c文件)制作成目标文件(.o 文件) gcc -c mul.c -o mul.o· gcc -c sub.c -o sub.o gcc -c add.c -o add.o ...
2018-12-06 21:08:29
246
原创 C语言编程注意事项1.0
1、当标识符由多个词组成时,每个词的第一个字母大写,其余全部小写;2、程序中不得出现仅靠大小写区分的相似的标识符;注意相似的数字及字母(0和o,I(i)和l(L))3、一个函数名禁止被用于其他之处;4、所有宏定义、枚举常数、只读变量全用大写字母命名,用下划线分割单词;#define MAX_NUM = 1005、一般来说,习惯上用n、m、i、j、k等表示int型变量;c、c...
2018-12-05 19:12:53
1764
原创 Linux工程管理器——Makefile
makefile 文件 ===> 创建文件名为makefile 或者 Makefile的文件(无后缀) 1、makefile的规则 书写规则: 目标文件:依赖文件 (一个tab键) 命令 命令前面的tab键不能用空格代替 目标文件 最终要生生成的文件 依赖文件 为了生成目标文件需要的文件 命令 ...
2018-12-04 14:57:00
210
原创 C语言小程序之统计单词个数
统计一个英文句子中含有英文单词的个数,单词之间用空格隔开#include <stdio.h>int count(char *pstr){ int count = 0; while(*pstr) { if (*pstr == ' ') { count++; } pstr++; } return count+1;}int ma...
2018-12-04 09:07:36
2341
原创 str函数定义:strlen strcat strcpy strcmp
#include <stdio.h>int strLen(const char *pStr){ if (NULL ==pStr) return -1; int len = 0; while(*pStr++) { len++; } return len;} void strCat(char * pStr1, const char * pStr2){...
2018-12-02 21:17:29
443
原创 C语言小程序之结构体
编程求两个复数的和#include <stdio.h>typedef struct complex{ int a; int b;}COM;COM complex_number_sum(COM m, COM n){ COM sum; sum.a = m.a + n.a; sum.b = m.b + n.b; return sum;}int mai...
2018-12-01 23:08:20
364
原创 C语言小程序之字符串逆序
#include <stdio.h>int strLen(const char *pstr);void reverse(char *pstr); int main(){ char str[100] = "Hello world"; int len = strLen(str); printf("%d\n", len); reverse(str); printf(...
2018-11-30 21:18:10
224
原创 通讯录
#include <stdio.h>#include <string.h>#define N 10struct Data{ int id; char name[N]; long long phone; };void add(struct Data *pa, int *length)//增加联系人{ // printf("请输入ID:"); /...
2018-11-29 22:44:22
97
原创 C语言小程序之字符串分类取出
输入一段字符串,按照字母和数字顺序打印出现过的字母(全部大写)和数字,且无论是否有重复,都只打印一次。#include <stdio.h>#include <string.h>void func(char *pStr, int len){ char ch[26] = {0}; char num[10] = {0}; int i; for (i = ...
2018-11-28 15:08:04
184
原创 C语言小程序之最大公共子串
题目:编程实现查找两个字符串的最大公共子串示例:"aocdfe"和"pmcdfa"最大公共子串为"cdf" #include <stdio.h>#include <string.h>int main() //暴力破解//缺点:子串较长时,重复比较 子串 及 子串的所有子串(cdf c d f cd df 都会比较一遍 ){ char *str1 = ...
2018-11-27 10:20:17
308
原创 C语言小程序之压缩字符串
#include <stdio.h>int main(){ void Compress(char *pStr, int len); char a[] = "aaaaabbbbcdefffffghhhhhhhhhhhb"; int len = sizeof (a) / sizeof (char); printf("%s\n", a); Compress(a...
2018-11-26 10:35:55
288
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人