- 博客(16)
- 收藏
- 关注
原创 C++、引用
1、什么是引用引用说白了就是取外号,声明一个标识符与其他对象进行绑定,相当于一个对象对应多个名字。2、什么时候适合所使用函数传参时使用,与指针相比,它不需要额外空间,也不需要赋值,仅仅是内存与标识符的绑定,既安全又高效。引用虽然好,但是并不能安全替代指针,如果使用堆内存,仍需要指针配合。3、如何使用引用int& 标识符 = 变量;4、使用引用要注意的问题1)定义引用时必须初始化,不存在空引用。2)引用不能更改目标,引用一旦完成定义和初始化后,标识符就与普通变了一样,它就代表引用目标,
2020-09-28 17:24:23 176
原创 C++、函数重载
一、C++中的函数1、函数重载1)什么是函数重载在C++中,只要函数的参数列表不同,函数名可以相同,这些同名函数构成重载关系。2)函数重载的机制C++的代码在编译时函数的参数类型会添加到函数名中,最终生成的函数名并不相同,也就是C++的函数在编译过程中经历的换名的过程。注意:如果两个函数名真的一样,一定会冲突。3)extern “C” {}告诉C++编译器按照C语言的方式声明函数,这样C++就可以调用C编译器编译出的函数了(C++目标文件可以与C目标文件合并生成可执行程序)。4)重载和作用
2020-09-27 12:06:03 262
原创 C与C++的区别2
一、C与C++数据类型的区别1、C++的结构1)不再需要 typedef,再定义结构变量时,可以省略struct关键字。2)成员可以是函数,在成员函数中可以直接访问结构成员,不再需要.或者->,但必须通过结构变量 或结构指针才能调用成员函数。3)有一些隐藏的成员函数(构造、析构、拷贝构造,复制构造)。4)可以被继承,可以设置成员的访问权限(面向对象)。2、C++的联合1)不再需要 typedef,可以省略 union 关键字。2)和结构一样。3)有隐藏的成员函数
2020-09-24 19:56:40 144
原创 基于C语言的简易通讯录
#include <stdio.h>#include <string.h>#include <stdlib.h>#include <getch.h>#include <ctype.h>static int count = 0;//有效联系人static char name[100][20] = {};static char tel[100][12] = {};static char sex[100] = {};void any
2020-09-22 13:00:57 111
原创 C与C++的区别1
一、C++介绍由本贾尼·斯特劳斯特卢普 于1979年4月份至1979年10月份完成了预处理器Cpre,为C语言增加了类机制, 当时称为“C with Class”,后来演化为C++。整体区别:1、C++完全兼容C语言的所有内容。2、支持面向对象的编程思想。(抽象、封装、继承、多态)3、支持运算符、函数重载。4、支持泛型编程、模板。5、支持异常处理。6、类型检查严格。二、Linux下程序的区别:1、文件扩展名:.cpp .cc .C .cxx2、编译器:g++ 大多数的Linux系
2020-09-16 15:13:26 198 2
原创 Linux虚拟内存
一、虚拟内存:1、系统会为每个进程分4G的虚拟内存空间。32个0 ~ 32个1 地址范围。2、用户只能使用虚拟地址,无法直接使用物理内存。3、虚拟地址与物理内存进行映射才能使用,否则就会产生段错误。4、虚拟地址与物理内存的映射由操作系统动态维护。5、让用户使用虚拟地址一方面为了安全,另一方面操作系统可以让应用程序使用比实际物理内存更的地址空间。6、4G的虚拟地址分为两部分 [0~3) 用户空间 [3~4) 内核空间7、用户空间中的代码不能直接访问内核空间代码和数据,可以通过
2020-09-11 09:52:45 705
原创 环境变量表
每个程序执行时操作系统都会给一个环境变量表,该表中记录了操作系统所有的环境变量,这些环境变量反映了操作系统的配置,以及该程序所处理的系统环境。声明extern char** environ; 就可以使用。操作环境变量表的函数:char *getenv(const char *name);功能:获取环境变量的值int setenv(const char *name, const char *value, int overwrite);功能:向环境变量表中添加环境变量name:环境变量名valu
2020-09-10 14:02:28 280 2
原创 Linux下的库、静态库、共享库
库:库文件就是目标文件的集合,可以被其它代码调用,把代码封装成库文件后方便使用、方便管理、安全性高、保密性强。静态库:就是目标文件的集合,调用静态库就是把静态库中的二进制指令拷贝到可执行文件中。优点:运行速度比共享库快。缺点:可执行文件相对较大,当静态库修改后,可执行文件要重新编译。共享库:就是没入口的可以执行文件,调用共享库就是记录共享中二进制指针的位置即可。当执行可执行文件时共享库会被一起加载到内存,可执行文件中可以跳转到共享库中执行。优点:可执行文件相对较小,当共享库修改后,可执行文件不要重
2020-09-10 11:29:41 111
原创 树形结构
树型结构:1、树的基本概念一种表示层次关系的(一对多)数据结构。有且仅有一个特定的节点,该节点没有前驱,被称为根节点。剩余的n个互不相交的子集,其中每个子集也都是一棵树,被称为根节点的子树。注意:树型结构具有递归性(树中有树)。2、树的表示方法:倒悬树、嵌套法、凹凸法。3、树的专业术语:节点:组成树的基础元素,同时它也是一棵树。节点的度:该节点子树的数量。树的度(密度):树中节点的数量。叶子节点:节点的度为0的节点。双亲和孩子:节点的子树被称为孩子节点,该节点就是它们的双亲。兄弟:
2020-09-04 17:05:14 961
原创 数组与矩阵
数组:存储空间链接的表结构矩阵:带二维信息的数据,一般使用二维数组来存储矩阵。特殊矩阵:上三角形矩阵:[0][1][3][6][ ][2][4][7] [ ][ ][5][8][ ][ ][ ][9] 压缩方法:用一维数组进行存储数组的长度:(n+1)*n/2对应关系:(j+1)*j/2+ii和j要满足:i<=j下三角形矩阵: [0][ ][ ][ ] [1][2][ ][ ] [3][4][5][ ] [6][
2020-08-26 16:12:56 127
原创 数据结构之顺序表、链式表
一、什么是数据结构1、数据结构的起源1968年,美国的高纳德教授开设了一门基本算法的课程,开创了数据结构的先河。数据结构是一门研究数据之间关系和操作的学科,而非是计算方法。数据结构+算法=程序 沃思凭借这名个论点,获得图灵奖,这句话展示出了程序的本质。2、数据结构的基本概念数据:所有能够输入到计算机中去描述事物的符号。数据项:有独立含义的数据最小单位,也叫域。数据元素:数据的基本单位也叫节点、记录。数据结构:数据元素和数据关系的集合。算法:数据结构所具备的功能,解决特定的问题的方法。3
2020-08-20 14:52:01 655 1
原创 C程序字符、字符串基础知识
字符:在计算机中字符是以整数形式存储在,当需要显示时会根据ASCII码表中的对应关系显示出相应的符号或图案。例如: '\0' 0 '0' 48 'a' 97 'A' 65 字符的输入:scanf("%c",&ch);ch = getchar();字符的输出:printf("%c",ch);putchar(ch);串:是一种数据结构,由一组连续的若干个类型相同的数据组成,有一个结束标志。字符串:由字符组成的串型结构,结束标志就是’\0’(通常
2020-08-03 11:49:28 337
原创 C程序之指针的一些知识
什么是指针:指针是一种数据类型,使用它可以用来定义指针变量,指针变量中存储的其实是整数,这种整数代表了内存的编号。 为什么要使用指针:1、函数之间相独立,但有些时候需要共享变量。 传参是值传递 全局变量容易命名冲突 使用数组还需要传递长度 命名空间是独立的,但地址空间是同一个,所有指针可以解决这个问题。2、由于函数之间传参是值传递(内存拷贝),对于字节数比较多的变量, 值传递效率较低,如果传递变量的地址只需要传递4|8字节。3、堆内存无法取名字,它不能像da
2020-07-25 11:11:53 108
原创 用C程序编简易双人五子棋
本程序主要通过多个自定义函数实现棋盘的形成、落子、以及五子判断。话不多说,直接上程序: 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <stdbool.h> 4 5 6 7 //棋盘 8 char board[15][15]; 9 10 //定义棋子 11 char kx =0,ky=0; 12 13 //记录角色@ # 14 char role ='@'
2020-07-18 16:31:20 317
原创 C程序之数组
C程序之数组首先要知道数组的概念:变量的组合,是一种批量定义变量的方式。定义方法如下:int arr [n];//类型 数组名[数量];初始化:类型 数组名[数量] = {1,2,3,4,5,...}; 1、数组与普通变量一样默认值是随机的,为了安全要对进行初始化。 2、这种初始化语法只能在定义数组时使用,而且必须使用常量初始化。 3、初始化数据过多,编译器会丢弃并产生警告。 4、初始化数据不够,编译器则会补0。 5、初始化数组时长度可以省略,编译器会自动统计
2020-07-11 17:34:21 139
原创 Linux基础知识汇总
Linux基础知识汇总Linux具有非常强的硬盘管理能力,它的各文件目录的功能如下:/根目录,所有文件都存储在它下面/bin 存储着系统命令/dev 设备文件(一切皆文件)/home 用户主目录,会自动生成用户同名目录/lib64 存储着64位的库文件 静态库.a 共享库.so/media 多媒体目录,u盘、光驱、挂载的目录/opt 安装的应用的软件/root 超级用户目录/sbin 存储超级用户才能使用系统命令/sys 存储着系统相关的文件/usr 存储着着文件/boot 存储
2020-07-08 13:57:23 128
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人