自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

spaceman_c的博客

程序人生

  • 博客(25)
  • 收藏
  • 关注

转载 【软件打包】SetupFactory打包之后,如何更改Setup.exe图标

https://blog.csdn.net/li235456789/article/details/50545370 //qt变成之后改变可执行程序exe的图标https://blog.csdn.net/liujiahan629629/article/details/7462443//教你玩转 Setup factory 7.0https://blog.csdn.net/licong_ca...

2019-05-11 18:01:36 1246

原创 库函数和系统调用的区别

库函数是语言本身的一部分,而系统函数是内核提供给应用程序的接口,属于系统的一部分函数调用是语言或者应用程序的一部分,而系统调用是操作系统的一部分用户应用程序访问并使用内核所提供的各种服务的tuji途径即是系统调用,在内核和用户应用程序相交的地方,内核提供了一组系统调用的接口,通过这组接口,应用程序可以访问系统硬件和操作系统资源系统调用是为了方便应用使用操作系统的接口,而库函数是为了方便...

2018-10-17 12:16:26 269 1

原创 【TCP的运输链接管理】三次握手和四次挥手

TCP是面向连接的 协议。运输连接是用来传送TCP报文的。TCP的运输连接的建立和释放是每一次面向连接中必不可少的过程。传输连接分为三个部分,即:连接建立,数据传送,连接释放。TCP建立连接过程中要解决的三个问题:要使每一方都要感知到对方的存在;要允许双方协商一些参数(如最大窗口值,是否使用窗口扩大选项等);能够对运输实体资源(如缓存大小,连接表中的项目等)进行分配; TCP连接的...

2018-08-31 21:48:06 313

原创 【C++】之浅拷贝和深拷贝的区别

浅拷贝:只是将对象中的值采用基本类型值复制的方式拷贝过来 深拷贝:如果一个类拥有资源,当这个类的对象发生复制过程的时候同时复制资源对一个已知对象进行拷贝,编译器会自动调用一种构造函数—–>拷贝构造,如果用户未定义拷贝构造函数,则编译器就会调用默认的拷贝构造函数比如先写一个类,不写拷贝构造函数:#include<iostream>#include<stdlib...

2018-08-27 18:50:25 254

原创 【剑指offer】位运算之不用加减乘除做加法

题目:求两个整数之和,要求在函数体内不得使用+,-,*,/四则运算符号分析: 比如38+87=125,计算分为三步 第一步:只做各位相加不进位,得到结果是15; 第二步:做进位,8+7有进位,进位为10;3+8有进位,进位为100; 第三步:将前两步的结果加起来15+10+100刚好还125; 二进制中5的...

2018-08-26 20:05:34 311

原创 内存管理

内存分配的三种方式:从静态区存储区分配 内存,内存在程序编译期间已经分配好了,这块内存在程序整个运行期间都存在,例如全局变量,static变量在栈上创建,在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放;栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限;从对上分配,亦称动态内村分配,程序在运行的时候用malloc或new申...

2018-08-25 15:54:17 177

原创 【Linux】之进程基础理解

.进程的引入 传统的程序是一系列的指令的结合,是一个静态的概念,无法描述程序在内存中的执行情况,及我们无法从程序中看出他何时执行,何时停顿,他与其他执行程序的关系;程序这个静态概念已经不能如实反应程序并发执行的过程,所以为了深刻描述程序动态执行过程的性质,所以引入进程进程的概念 进程是一个具有一定独立功能的程序关于某个数据集合的一次运行过程,他是操作系统动态执行的基本单元进程和程序的区别...

2018-08-19 00:10:44 237

原创 【剑指offer】之对称二叉树

- 题目描述请一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。分析:图1是一颗对称的二叉树,图2和图三都不是对称的二叉树判断一颗二叉树是不是对称的,比较他的每个左子树和右子树是否相等,采用先序遍历(根+左子树+右子树)和对称遍历序列(根+右子树+左子树) 依次比较先序遍历的根和对称遍历的根,先序遍历的左子树和对称遍历的...

2018-08-17 09:32:38 211

原创 【动态顺序表】的增删查改排序

1、用于存放声明的头文件:#pragma once#pragma once#define MAX 10// 值类型 typedef int DataType;typedef struct SeqList { DataType *data; // 值 int size; // 数量 int capacity;//最大容量} SeqList,...

2018-06-07 13:07:58 193

原创 【静态顺序表】的增删查改排序

定义: 用一段地址连续的存储单元依次存储数据元素的线性结构 地址连续的空间:一般情况下采用数组,数组有静态数组和动态数组之分,所以顺序表分为静态顺序表和动态顺序表静态顺序表:#pragma once#pragma once#define MAX 10// 值类型 typedef int DataType;typedef struct SeqList { Da...

2018-06-07 12:22:12 197

原创 【数据结构】有头循环双链表的创建销毁和增删改查

双链表: 节点 包含两个指针跟一个数据存储,存放上一个和下一个节点的地址(双向链表),通过上一个节点的指针域去找下一个数据和上一个数据。 DSList.h中代码: #pragma once#include<assert.h>//代码实现链表的操作函数 //值类型 typedef int DataType;typedef struct DSList {...

2018-06-07 11:50:16 446

原创 【数据结构】单项链表的创建销毁和增、删、改、查

链表: 节点 包含一个指针跟一个数据存储,存放了下一个节点的地址(单向链表),通过上一个节点的指针域去找下一个数据。 代码实现链表的操作函数:初始化;尾部插入 ;头部插入 ;给定结点插入插入到结点前 ;尾部删除 ;头部删除;给定结点删除; 按值删除只删遇到的第一个; 按值删除删除所有的;按值查找,返回第一个找到的结点指针,如果没找到,返回 NULL ; 销毁 ;sqList.h中代...

2018-06-07 11:21:32 701

原创 【数据结构】时间复杂度和空间复杂度

同一个问题可用不同的算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率,算法的复杂度分为时间复杂度和空间复杂度。(算法的复杂性体现在运行该算法时的计算机所需资源的多少上,计算机资源最重要的是时间和空间资源,因此复杂度分为时间复杂制度和空间复杂度。). 时间复杂度作用:时间复杂度是度量算法执行时间的长短;(时间复杂度简单的理解就是执行语句的条数。如果有循环和递归,则忽略简单语句,直接...

2018-05-27 11:24:35 6618

原创 【C语言】 实现通讯录(使用动态内存存储)

实现一个通讯录通讯录可以用来存储联系人的信息,每个人的信息包括: 姓名、性别、年龄、电话、住址 提供方法: 1. 添加联系人信息 2. 删除指定联系人信息 3. 查找指定联系人信息 4. 修改指定联系人信息 5. 显示所有联系人信息 6. 清空所有联系人 7. 以名字排序所有联系人 text.c中的代码: #define _CRT...

2018-05-18 17:11:34 655

原创 【自定义类型】:结构体,位段,枚举,联合

2018-05-09 18:21:24 226

原创 对【数组指针】【指针数组】【函数指针】【函数指针数组】以及【指向函数指针数组的指针】的理解

变量类型判断:变量和那个关键字结合,该变量就是什么类型; 1. 数组指针 定义 int ( * p)[n]; ; ( )优先级高,p先和 * 结合,所以是一个数组指针,该指针指向一个数组,这个数组长度是 n 。 将二维数组附给一指针: int a[3][4]; int (*p)[4]; //定义一个数组指针,指向含4个元素的一维数组; p=a; //将该二维...

2018-04-30 16:46:08 252

原创 可变参数列表解析

可变参数的作用和使用一般写的代码每个函数的参数都是给定的,给定两个实参,那么函数调用后就只能使用两个参数,如果数目不统一,编译器就会报错。通过将函数实现为可变参数的形式,可以使得函数可以接受1个以上任意多的参数。***求三个数的平均数***#include<stdio.h>#include<stdlib.h>#include<stdarg.h>...

2018-04-29 17:23:05 189

原创 浅谈函数的调用过程,栈桢的创建和销毁

函数的调用函数的调用过程main 函数在_tmainCRTStartup函数调用中,而_tmainCRTStartup函数是早mainCRTStartup被调用的。函数栈桢的创建和销毁函数的调用过程要开辟栈空间,用于本次函数的调用中临时变量的保存、现场保存。这块栈空间我们称之为函数栈桢。int add(int x,int y){ int z = 0; ...

2018-04-24 01:17:55 430

原创 调整数组使奇数全部位于偶数前面

调整数组使奇数全部位于偶数前面#include<stdio.h>#include<stdlib.h>void compare(int *arr, int len){ int i = 0; int j = 0; for (i = 0; i < len; i++)//遍历数组 { if (arr[i] % 2 ...

2018-04-13 13:43:27 100

原创 用C语言编写扫雷

#define row 10#define col 10#define M 20#include<stdio.h>#include<stdlib.h>#include<time.h>int menu(){ printf("--------1、玩游戏--------\n"); printf("--------2、exit-----...

2018-04-09 17:48:02 323

原创 用C语言编写三子棋小游戏

三子棋游戏编写    #define row 3#define col 3#include<stdio.h>#include<stdlib.h>#include<time.h>void player(char arr[row][col], int rows, int cols)//玩家下棋{ int i = 0; int j = 0;...

2018-04-08 14:57:06 302

原创 数组小总结

一、一维数组           1、一维数组的创建和初始化                         类型数名符 数组名[常量表达式]                          int arr1[10];注:[]中要给一个常量才可以,不能使用变量。                          int arr2[10]={1,2,3,4,5,6};其他元素自动附0值      ...

2018-04-05 16:02:12 198

原创 用C语言打印心形图

#include<stdio.h>#include<stdlib.h>int main(){ int i = 0, j = 0; int a = 3; char c = 3;//心形的ASCII代码是3 for (i = 0; i < 3;i++)//行数 3行 { for (j = 0; j < 5- 2*i;j++)//空格, ...

2018-04-03 18:46:24 20324 9

原创 c语言操作符小总结

 操作符的分类:         算术运算符、移位操作符、关系运算符、逻辑运算符、位操作运算符、赋值运算符、条件运算符、逗号运算符、单目操作符、下标引用,函数调用和结构成员   1、算术操作符        +     -     *    /     %       注意事项:%运算符要求参与运算的对象必须是整数,返回的结果也是整数2、移位操作符       <<    >&g...

2018-03-31 12:38:32 189

原创 趁着年轻使劲折腾

     好好学习,天天向上 ,不期望成为最优秀的编程师,但怎么也要成为之一。希望和我一样小白基础,开始学编程的人能够学业有成,加油,努力。     ...

2018-03-20 00:38:23 624

空空如也

空空如也

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

TA关注的人

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