Makefile简述

变量 定义变量 变量名 = 变量值 引用变量 $(变量名)或${变量名} 变量名规则: 可以以数字开头 大小写敏感 除了用户自定义变量,makefile也提供了一些变量,例如: CC:gcc编译器 CPPFLAGS:c预处理...

Read More



C Socket

UNIX/Linux 中的 socket 是什么 在 UNIX/Linux 系统中,为了统一对各种硬件的操作,简化接口,不同的硬件设备也都被看成一个文件。对这些文件的操作,等同于对磁盘上普通文件的操作。 为了表示和区分已经打开的文件,UNIX/Linux...

Read More



C语言结构体中,使用「.」和「->」的区别

首先两者的功能是一致的,都用于访问结构体或类的成员。 两种运算符优先级也相同。 通常情况下,结构体变量用「.」来访问成员,而结构体指针用「->」来访问。 struct Vec { int x; int y; } struct Ve...

Read More



segmentation fault

什么是段错误 所谓的段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器。 其中的32位是保存由它指向的gdt表,后13位保存相应于gdt的下标,最后3位包括了程序是否在内存中以及程序的在cpu中...

Read More



extern “C”

extern 是 C/C++ 语言中表明函数和全局变量作用范围的关键字,该关键字告诉编译器,其声明的函数和变量可以在本模块或其它模块中使用。 注意,语句 extern int a; 仅仅是对变量的声明,其并不是在定义变量a ,声明变量并未为 a 分配内存...

Read More