- 博客(29)
- 收藏
- 关注
原创 VirtualBox虚拟机上Ubuntu系统扩展容量方法(Gparted工具)
【进行如下操作前,请先关闭虚拟机】步骤一:如果虚拟硬盘为vmdk格式,则通过此步转为vdi格式,否则,跳过此步骤。切换到VirtualBox的安装目录(我的为C:\Program Files\Oracle\VirtualBox)。执行如下命令:C:\Program Files\Oracle\VirtualBox>VBoxManage clonehd e:\...\Ubuntu...
2019-11-01 18:36:58
1850
转载 C++函数声明的时候后面加const
非静态成员函数后面加const(加到非成员函数或静态成员后面会产生编译错误),表示成员函数隐含传入的this指针为const指针,决定了在该成员函数中,任意修改它所在的类的成员的操作都是不允许的(因为隐含了对this指针的const引用);唯一的例外是对于mutable修饰的成员。加了const的成员函数可以被非const对象和const对象调用,但不加const的成员函数只能被非const对象调...
2019-08-14 10:06:01
899
原创 call_usermodehelper()函数分析(内核态调用用户态函数)
如何在Linux内核中执行某些用户态程序或系统命令?在用户态中,可以通过execve()实现;在内核态,则可以通过call_usermodehelpere()实现该功能。如果您查阅了call_usermodehelper()内核函数的源码实现,就可以发现该函数最终会执行do_execve()。而execve系统调用在经历内核的系统调用流程后,也会最终调用do_execve()。 代码实例1 内核态...
2018-06-05 14:13:50
11513
翻译 office安装错误“错误25004,您输入的产品密钥无法在此计算机上使用,-----------”
错误现象如下图:解决办法:删除C盘所有带有office的文件,建议先删除以下文件【如果它还在的话】:C:\ProgramData\Microsoft\OfficeSoftwareProtectionPlatformC:\Program Files\Common Files\microsoftshared\OfficeSoftwareProtectionPlatformC:\ProgramData\...
2018-06-02 10:35:42
27271
1
原创 C语言(C++)数组名与结构体名区别
#include void main() { char string[]=”I love China!”; printf(“%s\n”,string);}string是数组名,它代表的是字符数组的首元素的地址。 #include void main(){ char*string = “I love China
2018-01-25 13:57:58
1389
原创 C语言(C++)指针变量及其与字符串赋值
1、变量的指针就是变量的地址。存放变量地址的变量就是指针变量,它用来指向另一个变量。如:下面两条语句作用相同 i=3; *i_pointer=3; 2、如何使一个指针变量指向另一个变量呢? int i,j; int *pointer_1,*pointer_2; pointer_1 = &i;
2018-01-25 13:56:37
5885
原创 C语言(C++)如何给字符数组赋值
1、char c[5]; c[0]=’H’; c[1]=’e’; c[2]=’l’; c[3]=’l’; c[4]=’o’;2、charc[5]={‘H’,’e’,’l’,’l’,’o’};3、(1)如果在定义字符数组时不进行初始化,则数组中各元素的值是不可预测的; (2)如果花括号中提供的初值个数(即字符个数)大于数组长度,则按语法错误处理; (3)如果花括号中提供的初值
2018-01-25 13:54:36
68318
3
原创 Ubuntu系统安装搜狗拼音输入法
1 下载搜狗拼音(Ubuntu版本) http://pinyin.sogou.com/linux/2 安装搜狗拼音deb包$ sudo dpkg –I 3 安装输入法切换功能$ apt-get install fcitx-table-all4 将搜狗输入法添加到界面
2017-08-18 13:27:28
441
原创 Thinkpad T440安装Windows7与Ubuntu14.04双系统后启动Win7花屏问题及解决办法
在ThinkPad T440安装完windows7与Ubuntu14.04双系统后,启动系统在grub界面选择Windows7后出现花屏,如下所示:在网上查了很多资料,尝试了很多办法,经过几天的尝试,终于找到解决办法,与大家分享一下:(1)进入Ubuntu系统,编辑/etc/default/grub 取消注释 GRUB_TERMINAL = console;(2)进入Ubu
2017-03-31 10:59:09
3754
转载 如何拷贝或克隆磁盘到另一块磁盘
磁盘拷贝或磁盘克隆的目的是减少因不必要的麻烦而带来的重装系统的问题,它可以解决因老磁盘大小不够或磁盘坏了,想更换到一个新的磁盘,但是又不想重新做系统和安装软件的问题,可以将老磁盘的所有数据都拷贝到新的磁盘里。1 分区助手工具 资料来源:http://jingyan.baidu.com/article/ff41162591667a12e5823755.html 1 百度搜索【分区助手
2017-03-28 16:59:25
7310
原创 静态数据成员只能在类体外,且通过函数体进行初始化(静态数据成员是在程序编译时被分配空间的)
1 静态数据成员不能用参数初始化表对静态数据成员初始化(1) 如果声明了类而未定义对象,则类的一般数据成员是不占内存空间的,只有在定义对象时,才为对象的数据成员分配空间。但是静态数据成员不属于某一个对象,在为对象所分配的空间中不包括静态数据成员所占的空间。静态数据成员是在所有对象之外单独开辟空间。只要在类中指定了静态数据成员,即使不定义对象,也为静态数据成员分配空间,它可以被引用。(2)
2017-03-09 10:30:35
14728
原创 利用类的成员函数重载双目运算符其最多只有一个参数
《C++面向对象程序设计(第2版)》P129“例4.3”《C++面向对象程序设计(第2版)》P133“例4.4”
2017-01-18 18:00:26
1980
原创 C++自动生成的构造函数为空且不执行初始化操作
《C++面向对象程序设计(第2版)》P71“如果用户自己没有定义构造函数,则C++系统会自动生成一个构造函数,只是这个构造函数函数体是空的,也没有参数,不执行初始化操作” 注意:当用户自定义构造函数后,是不能调用默认的构造函数的。 “第4章 对运算符进行重载 ”P123图1验证默认构造函数:图2图3
2017-01-17 09:20:40
3600
原创 C++共有数据保护—const深入理解
《C++面向对象程序设计(第2版)》“3.6共用数据的保护”P90-P98分析一个普通例子: 1 #include 2 using namespace std; 3 4 class Time 5 { 6 public: 7 Time(int h, int m, ints):hour(h),minute(m),sec(s){};
2017-01-13 20:05:51
463
原创 指向对象的常指针变量与指向常对象的指针变量区别
1 指向对象的常指针变量与指向常对象的指针变量区别 Time * const p; //指向对象的常指针变量 p的值(p的指向)不能修改 const Time *p; //指向常对象的指针变量,p指向的类对象的值不能通过p来修改1.1 指向对象的常指针变量将指针变量声明为const型,这样指针变量始终保持初值,不能改变,即其所指向不变。Timet1(10,12,15),
2017-01-13 20:02:24
2669
原创 指向常变量的指针变量,在其指向一个非const变量期间,该非const变量具有常变量特征(其它期间仍然是非const变量)
指向常变量的指针除了可以指向常变量外,还可以指向未被声明为const的变量。此时不能通过此指针变量改变该变量的值。char c1=’a’;//定义字符变量c1,它并未声明为constconst char *p;//定义了一个指向常变量的指针变量pp=&c1;//使p指向字符变量c1*p=’b’;//非法,不能通过p改变变量c1的值;c1=’b’//合法,没有通过p访问c1,c1
2017-01-13 19:24:52
379
原创 定义const对象而产生的常数据成员与直接定义const数据成员在编译器编译时候的区别
《C++面向对象程序设计(第2版)》P92“const数据成员可以被非const的成员函数引用”与 “const对象不能被非const的普通成员函数引用”是否矛盾??《C++面向程序设计(第2版)》P93提到“不要误认为常对象中的成员函数都是常成员函数。常对象只能保证其数据成员是常数据成员,其值不被改变”,这样看来常对象是否等于把对象中的数据成员都定义为const??分析:虽然从理解上
2017-01-13 15:57:34
935
2
原创 C与C++中关于声明与定义概念理解
声明与定义最大的区别就是是否分配存储空间。1 变量变量的定义用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且只有一个定义。变量的声明用于向程序表明变量类型与名字。定义包括声明,当定义变量时,就声明了它的类型和名字。可以通过extern关键字声明变量名字而不定义它。不定义变量的声明包括变量名,变量类型前的关键字extern。 2 函数 1 #inc
2017-01-11 20:09:17
304
原创 C++不对数组越界做检查
《C++面向对象程序设计》(第2版)P108中问题“(6)请思考:如果不将average函数定义为静态成员函数行不行?程序能否通过编译?需要做哪些修改?为什么要用静态成员函数?请分析理由”
2017-01-11 19:14:30
739
翻译 函数指针与指针函数的区别
函数指针与指针函数是两个完全不同的概念,唯一有联系的地方就是叫法比较相似,实际上没有任何关联。函数指针:本质上是一个指针,其类型为函数类型,即该指针指向函数,其最根本的属性:它就是一个变量或者常量。比如:int(*p)(int)这是一个参数为int,返回值也是int型的函数指针。指针函数:本质上是一个函数,返回值是指针的类型。比如:int *func(int a)就是一个指针函数,其返回值为int型指针。
2017-01-11 14:10:18
327
原创 博客序言
2016年6月23日是一个普通而又特殊的日子,因为从今天起,我开始讲自己在“BIOS->内核->文件系统->应用程序”开发过程中遇到的点滴问题,在这里与大家分享@! 希望得到大家的支持@!
2016-06-23 14:32:01
262
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人