C/C++ linux c 获取文件路径和文件名 linux 提供了两个函数分别用来获取文件所在的目录和文件名: [crayon-6867304b7ae37125541378/] 它们被包含在头文件 libgen.h 中,dirname 取得的路径名不包含最... 11 月 01 日3,062评论 阅读全文
C/C++ linux 多进程间文件共享机制 一、原理 linux 支持多进程间共享打开文件,即同一时刻允许多个进程同时打开同个文件,每个进程之间的读写操作互不影响。 为了实现这一个机制,linux 内核使用了三种数据结构来表示打开的文件,它们之间的... 10 月 31 日1,326评论 阅读全文
C/C++ 一次 undefined reference to ***的编译错误记录 一、问题描述 在编译 C++程序时,遇到以下问题: [crayon-6867304b7b46a998168406/] 看到错误的第一直觉是共享库出问题了,因为以前出现这个问题都是因为库没有加进来,但是反... 10 月 08 日1,2472 阅读全文
C/C++ c 语言可变长参数传递问题 一、问题描述 C 语言中的函数提供了一种可变长参数机制,这个机制使得我们在操作的时候充分自定义自己的功能,例如使用最多的 printf 函数: [crayon-6867304b7b855485343102/... 09 月 14 日1,215评论 阅读全文
C/C++ 程序的编译和链接过程 一、概述 一个程序在从源码变成二进制程序之间一共有四个步骤:预处理,编译,生成目标文件,链接。 以下展示了一个简单的加法程序的编译过程: [crayon-6867304b7badc132562563/... 09 月 14 日386评论 阅读全文
C/C++ std::string 中 size() 和 length() 的区别 STL 中的 string 类有两个方法 size() 和 length() 用来返回字符串的长度。 两者在实现上没有区别: [crayon-6867304b7bd01541919016/] &nbs... 07 月 02 日3,362评论stl 阅读全文
C/C++ Linux c 中的信号函数 一、信号函数的理解 C 语言中信号函数的原型为: [crayon-6867304b7bec6771442241/] 这个函数定义看起来十分复杂,可以分为以下两步来理解: 首先看 signal(int si... 05 月 21 日196评论 阅读全文
C/C++ GCC 警告 「missing sentinel in function call [-Wformat=]」 使用 exec 族函数时抛出以下警告: [crayon-6867304b7c0c1519132603/] 错误的原因在 man page 中找到: [crayon-6867304b7c0c8448691764... 05 月 21 日554评论 阅读全文
C/C++ C++中 return,exit 和_exit 的区别 三者的区别: return 作用于函数,使用 return 只是退出当前函数,而 exit 和_exit 直接终止程序。 return 和 exit 在退出各自作用域前会自动刷新缓冲区,_exit 不会刷新当前缓冲区。 ... 05 月 21 日321评论 阅读全文
前端 阿里图标库的使用方法 阿里图标库首页:阿里巴巴矢量图标库,首先进入注册账户,然后创建新项目: 进入项目页面后,右上角创建新项目: 新弹出的对话框中填入项目名称和字体类前缀: 项目创建完成后进入图标库挑选图标:... 05 月 20 日4082 阅读全文