日常开发知识点备忘
最近练习一些算法,实现做了一些简单的代码实现。作为一个菜鸟程序猿编程时还需要大量百度和阅读文章才能实现最终目的。
本文记录一些代码实现的知识点,也是拖到了再不写就完全想不起来的时间才开始记录。
-----分割线------本文不怕被分享---目前写给自己看-------------------
c语言:
作为本科课程,作者敢说课程内的东西基本都掌握了。然而实际编程中,遇到了一些平时没注意的知识点。
1,定义.h 文件将所有定义,函数,包含文件至于头文件中,除了看起来整洁无异味,还有防止文件互相包含,重复定义。
2,如果没有特殊要求,尽量不要自己实现一些STL中已有的容器,自找麻烦。
3,对于字符串处理,这个有许多细节需要注意:
std::ifstream myfile(file_name);//打开文件流
得到固定格式的变量,比如char
char c;
myfile.get(c);
字符串可以追加固定字符,不可以追加变量
s.append ("A");
字符数组中某段变为字符串
char *c = new char[100];
string add(&c[start], &c[end]);
Linux系统下:
fork()函数,执行完fork函数后,子线程和当前线程都会执行fork之后的代码
pid = fork()//通过pid判断当前线程是否为父线程,pid= 0,则为子线程
kill()函数可以通过pid将线程暂停,杀死,重新开始,或者忽略来自子线程的消息
Ubuntu:
Cmake 报错ld错误,注意输出文件,例如输出在build文件中,自己新建build文件夹,会导致该错误。
注意gcc版本和g++版本区别,低版本系统升级单个时可能导致两个版本不同步。sudo安装之后,记得设置环境变量
新建程序工程,不可放置与外接硬盘的存储器当中,编译成功的可执行程序会无法运行,即使改变其权限