自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 收藏
  • 关注

原创 gdb调试,makefile与make

1.gdb调试(1)debug版本:在编译阶段会加入某些调试信息;调试信息是在编译的过程中加入到中间文件.o文件的;gcc -c main.c -g:生成包含调试信息的中间文件gcc -o main main.o一步执行:gcc -o main main.c -g(2)release版本:发行版本,没有调试信息;gcc默认生成release版本;(3)gdb基础命令:gdb 可执行文件名加断点: b 行号显示代码: l启动程序:r查看断点信息: info break/in.

2022-05-01 14:55:36 559

原创 编译连接的四步

1.gcc,g++安装2.编译链接的四步(1)预编译:gcc -E main.c -o main.i(2)编译gcc -S main.i -o main.s(3)汇编gcc -c main.s -o main.o(4)链接gcc main.o -o main执行: ./main或者:全路径/main3.编译链接的过程main.c 通过预编译 生成main.i文件main.i 通过编译生成main.s 文件main.s 通过汇编生成main.o 文件链..

2022-04-25 22:06:34 4103

原创 文件压缩,解压与进程管理命令,用户管理命令

1.文件压缩.解压命令(1)tar:打包或者解包tar cvf xxx.tar(打包好 的名字) 需要打包的所有文件名(2)gzip 压缩或者解压压缩:gzip 打包的名字例如:gzip mytar.tar解压:gzip -d xxx.tar.gz例如:gzip -d my.tar.gz(3)tar一步解压(面试考点)GNU之后的tar命令:可解压两种格式的:tar.gz 和tgz格式的;tar zxf xxx.tar.gztar zxf xxx.tgz2.进程..

2022-04-25 22:03:21 528

原创 文件编辑命令

(1).vim简介vim是vi的升级版本,用vi自动连接的是vim ,vi特别不要用,方向键用不了;vim 的官方网站 (https://www.vim.org/)(2).安装vimsudo apt install vim出现问题的解决方法:(1)出现"无法获得锁 之类的"sudo rm 文件名删除多次(2)apt update:刷新软件源(3).vim的三种模式vim分为三种模式:命令模式,插入模式(编辑模式),末行模式;用户刚刚启动vi/vim,便进入了命令模式.此状态下敲击键.

2022-04-25 22:00:12 1040

原创 Linux基础命令

1.基础命令(1)pwd:显示当前位置的绝对路径(2)cd:切换目录:cd 要切换的位置(绝对路径/相对路径)(3)ls:显示目录中的文件ls -l(简写为ll,等价)(4)man:帮助手册(1)代表命令(2)代表系统调用(3)代表库函数man printf:查询命令printfman 3 printf:查询库函数printf(5)touch:创建普通文件(6)mkdir:创建目录文件(7)rmdir:删除空目录,不能删除非空目录(8)cp:拷贝文件拷贝普通文件语法:cp.

2022-04-17 22:29:16 462

原创 操作基础命令

1.基础命令:pwd:显示当前所在位置的绝对路径cd 路径:切换当前工作位置cd . :退回到当前位置cd .. :退回到上一层ls:默认显示当前位置当前目录下的内容clear:清屏(相当于翻页)cd ~:直接进入到当前用户的家目录cd -:切换到上一次所在位置,在两个位置之间来回切换;mkdir 文件名:创建一个目录(文件夹)touch 文件名:创建一个普通文件练习题:在stu目录下创建两个文件夹,在两个文件夹里面分别创建两个普通文件(文件后缀名不限);2.文件类型.

2022-04-17 22:28:03 773

原创 Linux系统介绍

一.Linux系统介绍1.由来1991 大三的学生 Linus Torvalds操作系统 Linux开源Linux 内核档案 (kernel.org)二.Linux和Windows区别1.Linux开源,Windows不开源2.Linux主要用于服务器,手机,嵌入式,Windows主要用于个人电脑;3.Linux主要使用命令行操作系统,Windows使用图形化界面4.Linux免费,或者很少费用,Windows价格昂贵;三.Linux版本1.内核版本Lin.

2022-04-17 22:25:57 506

原创 数据结构:串

#include <stdio.h>#include <string.h>/** 串,笔试面试主要以字符串的形式考试* 数据结中的串,以''包括起来的序列.例如'abcd'* 串的基本概念:* 空串:长度为0的串,''* 空格串:全部都由空格组成' '* 串的长度:例如'abcd',长度为4* 串相等:串的每个字符都相等,并且长度相等.例如'abcd'=='abcd'* 子串:串中任意连续的子序列.空串是任意串的.

2022-03-24 10:15:33 1146

原创 数据结构:一元多项式

1.头文件(poly.h)#pragma oncetypedef struct{ float coef;//系数 int expn;//指数}trem,ElemType;typedef struct PNode{ ElemType data;;//数据 (系数+指数) struct PNode* next;//后继指针}PNode,*Poly;//初始化带头结点多项式void InitPoly(Poly po);//往po多项式插入数据val,按照指数升序bool .

2022-03-24 10:10:52 661

原创 数据结构:循环链表

1.头文件(clist.h)#pragma once//带头结点的循环链表,其尾节点的后继为头结点(不是NULL)//节点的结构和单链表一样typedef int ElemType;typedef struct CNode//循环链表节点{ ElemType data;//数据 struct CNode*next;//后继指针}CNode ,*CList;//初始化plistvoid InitList(CList plist);//往plist中头部插入数字valbool.

2022-03-24 10:05:13 77

原创 数据结构:顺序栈

1.头文件(seqstack.h)#pragma once//不定长顺序栈:当栈满后能够扩容.利用顺序表保存数据#define INITSIZE 10typedef int ElemType;typedef struct{ ElemType* base;//指向存放数据的指针 ElemType* top;//栈顶指针,指向当前可以存放数据的地址 int stacksize;//栈总容量}SqStack,*PSqStack;//sizeof(SqStack)==12;//栈的初始.

2022-03-24 10:03:11 1425

原创 数据结构:顺序队列

1.头文件(sqqueue.h)#pragma once#define MAXSIZE 100typedef int ElemType;typedef struct SqQueue{ ElemType base[MAXSIZE]; int front;//队头指针,实际是下标 int rear;//队尾指针,实际是下标,当前可以存放数据的下标}SqQueue, * PSqQueue;//队列初始化void InitQueue(PSqQueue pq);//入队bool P.

2022-03-24 10:00:17 565

原创 数据结构:双向链表

1.头文件(dlist.h)#pragma oncetypedef int ElemType;typedef struct DNode{ ElemType data; struct DNode* next; struct DNode* prior;}DNode,*DList;//初始化plistvoid InitList(DList plist);//往plist中头部插入数字valbool Insert_head(DList plist, ElemType va.

2022-03-24 09:56:41 56

原创 数据结构:链式栈

1.头文件#pragma oncetypedef int ElemType;typedef struct LNode{ ElemType data; struct LNode* next;}LNode;typedef struct LStack{ LNode* top;}LStack,*PLStack;//栈的初始化void InitStack(PLStack ps);//入栈bool Push(PLStack ps, ElemType val);//判空.

2022-03-24 09:54:19 78

原创 数据结构:链式队列

1.头文件(listqueue.h)#pragma oncetypedef int ElemType;typedef struct QNode{ ElemType data; struct QNode* next; }QNode ,*QueuePtr;typedef struct{ QNode* front;//队头指针 QNode* rear;//队尾指针}LinkQueue;//头结点的定义//队列初始化void InitQueue(LinkQueue* pq);.

2022-03-24 09:52:25 762

原创 数据结构单链表

1.头文件(list.h)#pragma oncetypedef int ElemType;typedef struct Node{ ElemType data;//数据 struct Node* next;//后继指针}Node, * List;//list==Node *//typedef Node* List;//List == Node *//List本质是Node*,但含义不同,List表示一条链表,Node*表示一个节点的地址//初始化plistvoid In.

2022-03-24 09:40:26 427

原创 数据库,索引

CREATE TABLE hhh( a int AUTO_INCREMENT, #主键,AUTO自动排序赋值 b int, #带普通索引 c int, #不带索引 INDEX idx_b(b),#创建普通索引 PRIMARY KEY (a));#往hhh表中插入80000个随机数字(利用存储过程插入)CREATE PROCEDURE hhh_insert() #创建存储过程BEGINDECLARE i INT DEFAULT 1;#声明变量...

2022-03-23 11:43:33 545

原创 数据库,正则表达式与子查询

CREATE table tbl1 ( num1 INT NOT NULL);CREATE table tbl2 ( num2 INT NOT NULL);INSERT INTO tbl1 values(1), (5), (13), (27);INSERT INTO tbl2 values(6), (14), (11), (20);#子查询:一个查询语句是另一个查询语句的一部分,#查询tab1中大于tal2中任意数据的值SELECT num1 FROM tbl1 WHERE num1 &g.

2022-03-23 11:41:22 706

原创 数据库,连接查询

CREATE TABLE fruits(f_id char(10) NOT NULL,s_id INT NOT NULL,f_name char(255) NOT NULL,f_price decimal(8,2) NOT NULL,PRIMARY KEY(f_id));INSERT INTO fruits (f_id, s_id, f_name, f_price) VALUES('a1', 101,'a...

2022-03-23 11:38:29 110

原创 Mysql数据库单表查询2

SELECT * FROM orderitems;SELECT * FROM fruits;#先执行from,再执行where,然后执行selectSELECT f_price FROM fruits WHERE f_name='apple';#查询订单编号,订单中的第几样水果,水果名称SELECT o_num,o_item,f_name,quantity,item_price FROM fruits,orderitems where fruits.f_id=orderitems.f_i...

2022-03-23 11:36:33 486

原创 数据库单表查找

#注释,单表查询selectuse test;创建fruits表:CREATE TABLE FRUITS(f_id char(10) NOT NULL,s_id INT NOT NULL,f_name char(255) NOT NULL,f_price decimal(8,2) NOT NULL,PRIMARY KEY(f_id));插入数据:INSERT INTO fruits (f_id, ...

2022-03-23 11:35:24 702

原创 数据库增,删,改

创建表:#将使用样例表person,创建语句如下:CREATE TABLE person(id INT UNSIGNED NOT NULL AUTO_INCREMENT,name CHAR(40) NOT NULL DEFAULT '',age INT NOT NULL DEFAULT 0,info CHAR(50) NULL,PRIMARY KEY (id));插入数据:#在person表中,插入一条新记录,id值为1,name值为Green,age值...

2022-03-23 11:22:02 125

原创 飞机订票系统

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>#include<string.h>#include<conio.h>#include<time.h>#define HEAD1 "*****************************************************\n"#define HEAD2 "|Flight|Start..

2022-03-23 11:14:38 165

原创 图书管理系统

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include <windows.h>//为了system("cls");//清屏#include<conio.h>//为了_getch();//从控件中获取字符而无需回显;#define BOOK_NUM 200//书有200种#define READER_NUM 100//读者最多有100个#define BOOK_DATA astBook[i].iNu..

2022-03-23 11:12:28 257

原创 五子棋游戏实现

头文件(chess.h)#pragma once#include<stdio.h>#define ROW 20 //棋盘行数#define COLUMN 20//棋盘列数#define CONNECT 5//多少子棋//结构体创建棋盘typedef struct Board { const char* chess_Board[ROW][COLUMN]; int size;}Board,*PBoard;//功能//初始化棋盘属性void initchessboa.

2022-03-23 11:08:44 3527

原创 atm管理系统

测试文件(text.cpp):#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include"atm.h"#define INITCAPACITY 10#include<Windows.h>#include<conio.h>void menu(){ system("cls"); printf("-------欢迎进入ATM机系统------\n"); printf("请选择:(1~3)\...

2022-03-23 11:06:11 254 1

原创 二维数组与变量总结

/** 1. 动态开辟二维数组* 2. extern 关键字 -> 外部的* a.cpp 定义 int a = 222;* b.cpp 使用 a变量。先声明变量a extern int a; 源文件中已经定义过a,编译器LINK 变量* 3. 变量:普通局部变量: 函数中定义的变量 .stack 只声明未定义 随机 普通全局变量: 函数外定义的变量 .data 只声明未定义 类型默认值 stati...

2022-03-05 16:47:21 653

原创 字符串的总结

*一. 字符串函数总结* 1) 比较操作strcmp比较 strcmp("abc", "abc") == 0 返回值 = 0 相等。 > 0 前者 > 后者,小于0是前者小于后者* strncmp比较 strncmp("endover", "end", 3); 前两个字符串中 前3个字符比较* 2) strcat 链接操作* strcat(str,ptr)是将字符串ptr内容连接到字符串str后,然后得到一个组合后的字符串str3) strlen() 字符个数,遇到\0统计...

2022-03-02 10:10:23 168

原创 C语言数据结构8大排序

排序难点:算法多,容易混淆1.直接(简单)插入排序:扑克牌 特点:越有序越快,完全有序O(n),非常重要,这个是希尔排序的基础2.希尔(shell)排序 分组后利用直接插入排序3.冒泡排序: 两两比较,大的往后走* 4.快速排序: 算法: 1.从后往前找比基准小的数字,找到往前挪 2.从前往后找比基准大的数字,找到往后挪 3.重复1.2 缺点:...

2022-03-02 10:06:16 172

原创 数据结构哈希表

/** 哈希表也称散列表* 描述:* 1.一种新的存储方式* 2.根据要存储对的关键字(key)的值计算出应该存储的位置* 特点:散列表的查找效率高,空间利用率低** 1.散列方法,散列函数* 选取某个函数,依照该函数按照关键字计算元素的存储位置,并按此存放* 2.散列表(哈希表)* 3.冲突:不同关键字映射到同一个散列地址* key1!=key2;* H(key1)==H(key2);* 近似等于数学上多对一* 4.同义词* 具有相同函数值的多个关键字* eg:key1..

2022-02-25 16:20:57 401

原创 C语言数据结构的8个排序

排序难点:算法多,容易混淆1.直接(简单)插入排序:扑克牌 特点:越有序越快,完全有序O(n),非常重要,这个是希尔排序的基础2.希尔(shell)排序分组后利用直接插入排序3.冒泡排序:两两比较,大的往后走* 4.快速排序: 算法:1.从后往前找比基准小的数字,找到往前挪 2.从前往后找比基准大的数字,找到往后挪3.重复1.2...

2022-02-25 15:06:08 991

原创 关于VS的文件操作

/** 文件操作(打开文件,读写文件,关闭文件,定位文件内容位置)* 1. 什么是文件:* 2. 文件分类: 音乐播放 vs 画图 -> 一起执行 CPU 单核 时间片轮转 1ms* 3. 文件指针FILE* 4. 文件操作 打开关闭,读写,标记fseek* fopen fclose fread fwrite fseek*//** fopen()函数* mode 操作文件方式:r -> 只读模式 -> 前提文件必须存在,不...

2022-02-25 08:58:25 1747

原创 初识结构体

1. 结构体的定义 结构体是由一系列具有相同类型或不同类型的数据构成的数据集合,叫做结构2. 结构体成员访问: 结构体变量 . 成员 . 成员访问符 以下两种访问方式等价: 结构体指针变量 -> 成员 -> 指向符(*结构体指针变量).成员 内置类型 结构体类型 -> 设计新数据类型 银行卡类型 学生类型 -> 用户自定义数据类型type...

2022-02-17 17:35:06 155

原创 区别typedef与#define

1.区别typedef与#define(1)/#define INITSIZE 10//宏常量 预编译阶段 字符串(宏)替换(2)//typedef -> 类型的重定义(3)具体区别#define INT_Pointer int* ///INT_Pointer a, b; //int *a , bdefine只能是宏定义,不能重定义类型typedef可以重定义类型typedef int* INT_POINTER;INT_POINTER a, b;//等...

2022-02-17 17:12:09 533

原创 指针的总结

一、指针总结 int a = 10; 1.一级指针 int *p = &a; 2. 二级指针 int **pp = &p; 3.指针数组 落脚点 数组 -> const char* arr[2] = {"hello","world"}; 4. 数组指针 int arr[10]= {1,2}; 定义指针(指向一维数组的指针)...

2022-02-17 16:21:44 367

原创 整型转字符串itoa

itoa代码的实现#include<stdio.h>#include<assert.h> value整型 以 radix 进制 做转换,转换结果保存到buffer数组char* my_itoa(int value, char* arr, int radix){ assert(value != 0); char index[] = { "0123456789ABCDEF" }; int flag = value < 0 && radix ==.

2022-02-12 18:56:30 564

原创 二分查找递归与非递归

二分查找递归与非递归

2021-12-09 19:08:25 827

原创 数组的排序

数组的排序

2021-12-04 16:28:03 871

原创 数据itoa操作

数据atoi操作

2021-12-04 16:16:45 288

原创 对数据atoi操作

对数据atoi操作

2021-12-04 16:05:01 366

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除