03 2023 档案

摘要:#include <iostream> /* #pragma pack(4) */ using std::cout; using std::endl; //1 4 2 1 struct x { char a; int b; short c; char d; }MyStructX;//12 struc 阅读全文
posted @ 2023-03-25 18:56 TommyShelbyyyyy 阅读(14) 评论(0) 推荐(0) 编辑
摘要:初步用C++实现单例模式,暂未考虑线程安全问题 #include <stdio.h> #include <iostream> using std::cout; using std::cin; using std::endl; // 单例模式的设计需求:一个类只能有一个对象 // 思路:创建的对象肯定 阅读全文
posted @ 2023-03-25 18:06 TommyShelbyyyyy 阅读(14) 评论(0) 推荐(0) 编辑
摘要:1 const关键字与宏定义的区别是什么? 答: const常量具有类型,编译器可以进行安全检查,一旦出现bug,在编译阶段就可以发现。而宏定义发生在预处理阶段,它只是进行简单的字符串替换 ,一旦出现bug,可能在运行时才知道。 2 malloc的底层实现是怎样的?free是怎么回收内存的? 答: 阅读全文
posted @ 2023-03-23 14:34 TommyShelbyyyyy 阅读(16) 评论(0) 推荐(0) 编辑
摘要:Linux文件操作 Linux的文件 Linux中对目录和设备的操作都是文件操作,文件分为普通文件,目录文件,链接文件和设备文件 普通文件:也称磁盘文件,并且能够进行随机的数据存储(能够自由seek定位到某一个位置) 管道:是一个从一端发送数据,另一端接收数据的数据通道 目录:也称为目录文件,它包含 阅读全文
posted @ 2023-03-22 21:49 TommyShelbyyyyy 阅读(92) 评论(0) 推荐(0) 编辑
摘要:Linux系统编程 文件 重要 难度 目录流 3 4 无缓冲IO 5 2 IO多路复用 5 5 IO多路复用可用于制作即时聊天系统 进程 重要 难度 虚拟 4 3 CPU 进程调度 4 3 内存 虚拟内存 4 3 多进程 3 3 线程 重要 难度 多线程 5 2 互斥 5 3 同步cond 6 4 阅读全文
posted @ 2023-03-22 20:54 TommyShelbyyyyy 阅读(30) 评论(0) 推荐(0) 编辑
摘要:库文件 目标文件的集合(*.o) 静态库和动态库 静态库:类比家用车,将库打包到产品(可执行程序) 动态库:类比F1赛车,运行时才加载到可执行程序 可执行程序大小 部署难度 升级难度 静态库 大 易 难 动态库 小 难 易 静态库的生成 生成目标文件 把目标文件打包成静态库 将静态库移动到/usr/ 阅读全文
posted @ 2023-03-22 17:04 TommyShelbyyyyy 阅读(30) 评论(0) 推荐(0) 编辑
摘要:易混淆的几个概念 常量指针与指针常量 int value = 0; int num = 1; // 1.当const位于 * 左边时,称为常量指针 const int* p1 = &value; int const *p2 = &value; *p1 = 10; // error 不能改变指针所指变 阅读全文
posted @ 2023-03-21 20:35 TommyShelbyyyyy 阅读(63) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示