- 博客(15)
- 收藏
- 关注
原创 【Linux C】变量何时存放在BSS段?
Linux进程地址空间布局一个Liunx应用程序进程在内存中有不同的分段(Segment),而进程地址空间布局中,从物理上,数据(user data, sys data)和指令,都是“数据”,但是从逻辑上来讲,是有区别的,属性不一样。有些数据是指令,只读,不可写,有些数据可写,有些数据只可读。【题外话】关于CPU如何区分内存中数据到底是“指令”还是“数据”,就需要一些基础汇编知识了。举例来说,CPU中有几个寄存器专门用来指向“数据”或“指令”,CPU将会根据该寄存器指向的内存地址来确...
2021-09-12 23:31:00
550
转载 【转】编程珠玑之第一题:如何使用位逻辑运算(如与、或、移位)来实现位向量?
编程珠玑开篇的一道题目是这样的:如何使用位逻辑运算(如与、或、移位)来实现位向量?一.何为位向量?在许多情况下(如对象为满足或不满足某条性质的情况),用一个二进制位就足够表示一个对象了。但是,不能用一个变量名直接表示一个位(不存在单独为一位的数据类型)。于是,就考虑将多个位组成一个基本数据类型,通过对这个基本数据类型的操作,达到使用位的方法。同时,为了方便,把由位组成的基本数据类型组成数组,这样,就可以对一定范围的位数据集合进行操作。我们把这种形式的数据结构称为位向量。接下来,再..
2021-04-26 21:38:55
356
原创 C++返回值优化
按照预期情况,以上程序本来应该有如下的打印顺序:构造Obj对象(在getObj()中)->拷贝构造(在getObj()中的return obj;)->拷贝构造(stdmoveTest()中),但是运行程序后,发现只有一次拷贝构造,这说明,编译器帮我们做了优化,避免了从临时对象中多次拷贝内存的尴尬局面。在G++编译器中可以添加-fno-elide-constructors关闭这个优化,但是对于VS,我还没有找到这个优化选项的开关。有了这个优化,我们可以放心地使用临时对象初始化一个新对象了(..
2021-03-28 10:49:28
250
2
原创 CString的GetBuffer(),GetAllocLength(),ReleaseBuffer()方法
工程配置工程属性中使用的是多字节字符集(MultiByte),所以typedef CSimpleStringT< TCHAR > CSimpleString; 中TCHAR是char型。CString和CSimpleString的区别CStringT继承自CSimpleStringT,并且以下谈论到的若干个方法都是在CSimpleStringT类中实现的,因此使用CSimpleString作为方法的执行者。另一方面Microsoft Docs中也是使用CSimpleString类
2021-02-25 23:19:45
728
原创 C++中override和overwrite的探究
#include <iostream>class Parent{public: void F() // 子类中有相同签名的函数时,称为重写(overwrite), // 没有virtual关键字 { std::cout << "Parent.F()" << std::endl; } virtual void G() // 带virtual关键字且子类中存在相同函数时,称为覆盖(override) { std::cout &.
2021-02-06 18:46:23
810
4
原创 VMWare/VMPlayer中“HGFS“的全称
VMware或VMPlayer里面经常用到共享文件夹,有时候自动挂载失败的话,需要用vmhgfs-use这个命令挂载,那这个hgfs是什么意思呢?答案就是:HGFS(Host Guest File System) 翻译过来应该是:主机-客户机 文件系统...
2020-07-03 17:24:15
2094
原创 VirtualBox虚拟机卡在Started Update UTMP about System Runlevel Changes【Failed to load module "vboxvideo"】
为了能让Linux的虚拟机与宿主机共享文件夹,重新安装了一下VirtualBox提供的“Guest Additions”工具:没想到【编译】安装完后重启虚拟机,图形界面无法启动了,具体表现就是:解决方案:这里先说解决方案,其实非常简单,只要关闭虚拟机后, 在虚拟机的设置里面把Graphics Controllers从“VBoxVGA”替换为“VSMVGA”即可。问题起因:...
2020-01-19 18:37:41
10704
2
原创 Windows下CMD(命令提示符)脚本运行过程中被阻塞
之前备份Windows时(使用的批处理即.bat文件)或者在CMD下运行Python脚本调用CMD命令时,有时候会出现脚本被阻塞的情况,这是因为“快速编辑”选项被打开了。关闭方法如下:运行一个cmd窗口,然后在该cmd窗口标题栏上单击右键, 选择属性(Properties):然后会弹出对话框, 取消选中 快速编辑模式(Quick Edit Mode):然后点击确定,这样设置好了...
2019-07-03 14:52:48
7569
11
原创 不同电脑创建的Android Stduio运行报错解决方案
在自己台式机上创建的Android Studio项目,想拿到笔记本电脑上同步执行,可是直接复制工程到笔记本电脑上各种报错。。。如何解决?
2017-10-17 09:25:07
860
原创 error:can't find command 'linux'解决办法
error:can't find command 'linux' error: can't find commamd 'initrd'!装了CentOS,ArchLinux,Ubuntu和Win10多系统,今天开机发现Arch和Ubuntu进不去了! Win10和CentOS正常,可是刚装完Centos的时候并没有无法启动的情况,上Bing搜了一下好像没有解决办法 偶然看到一个老外的回答,
2017-04-20 17:55:19
21313
12
原创 Ubuntu14.04使用拼音输入法
其实Ubuntu14.04LTS里面自带了有拼音输入法(ibus-pinyin), 没必要再去下载搜狗输入法(如需要使用搜狗,请看底部)。但是如果当时安装Ubuntu的时候选择的是英文安装环境的话,安装成功后你在TextEntry(输入法选项)里面即使添加了 中文(拼音) ,你真正去打拼音的时候会发现,输入的跟输出的子不太正常。其实这个问题是因为 中文语言支持包没有安装完整。解决办法:请先打开终端...
2017-04-20 12:11:53
2800
原创 CentOS7开启自定义热点HotSpot
较新的Gnome在wifi设置上集成了热点功能,理论上支持所有GNOME环境(需版本较新):点开右上角电池标志后打开wifi设置,开启热点后可以看到默认的热点配置,如果需要手动修改热点密码和名字需要:打开终端后cd /etc/sysconfig/network-scripts/这个文件夹里面会保留你连接过的Wifi信息然后sudo vi ifcfg-Hotspo
2017-03-11 16:04:56
5153
原创 Linux安装可同步的Firefox
Firefox浏览器的一大特性就是跨平台,虽然Chrome也在移动平台,PC平台有对应的版本,可是国内墙是硬伤!(登陆都难,特别是对于我这种买不起VPN的穷叼丝~).先进firefox中国区官网下载地址:http://www.firefox.com.cn/download/点击打开链接!!!注意:一定是要.com.cn的中国网站, 因为Firefox针对中国用户单独分配了账户服务器, 如果
2017-01-09 19:42:04
1083
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人