C语言
过圆心圈圈圆心
这个作者很懒,什么都没留下…
展开
-
可变参数 ... 和__VA_ARGS__ 以及 # ,##
define a(x,y) x##y // 这里是吧 x和y链接在一起 a(2,3) ---> 23。这些宏去解析变参列表。预处理器在将宏展开时,会用变参列表替换掉宏定义中的所有。例如 #define a(x) #x //预定义标识符来表示前面的变参列表,而不是像变参函数一样,使用。用 ... 表示变参列表,变参列表由不确定的参数组成,可变参数宏使用 C99 标准新增加的一个。在这里时把参数x转化为字符串。原创 2023-06-14 09:22:27 · 625 阅读 · 0 评论 -
strlen的小陷阱
strlen的小陷阱strlen malloc 一起使用的注意事项原创 2021-12-02 14:10:06 · 781 阅读 · 0 评论 -
stm32f4xx.h
5 stm32 stm32f10x.h头文件的主要结构 (1) 库函数配置 通过一些宏定义来配置不同的功能(2) 数据类型定义 使用typedef定义一些数据类型 (3) 定义了各个外设模块寄存器的结构体Peripheral_registers_structures(4) 定义了各个外设模块寄存器基地址 Periphera原创 2017-03-23 12:05:07 · 4180 阅读 · 0 评论 -
fork 函数
原来刚刚开始做Linux下面的多进程编程的时候,对于下面这段代码感到很奇怪,#include#include#include#include#include#include#define LEN 2void err_exit(char *fmt,...);int main(int argc,char *argv[]){ pid_t pid;原创 2017-02-22 17:15:13 · 457 阅读 · 0 评论 -
c语言定义和声明
声明(declaration )指定了一个变量的标识符,用来描述变量的类型,是类型还是对象,或者函数等。声明,用于编译器(compiler)识别变量名所引用的实体。以下这些就是声明:extern int bar; // 引用外部变量extern int g(int, int);double f(int, double); // 对于函数声明,extern关键字是可以省略的。原创 2016-12-01 21:03:29 · 581 阅读 · 0 评论 -
在C语言头文件里我们如何应用#ifndef
举个例子 我在led.h 头文件里这么写#ifndef __LED_H#define __LED_H.............#endif1 这样写是如何完成防止重复定义功能的2 __LED_H 这个宏定义我可以随便命名吗,还是这个#define后面的名字和 头文件led.h 得名字村子某种命名约束3 在应用头文件中 ifdef 是如何公工作的答案原创 2016-11-14 17:02:09 · 3078 阅读 · 0 评论 -
C在linux 下完成 引用传递
计算机内存中的每个位置都由一个地址标识,通常,邻近的内存位置合成一组,这样就允许存储更大范围的值,指针就是它的值表示内存地址的变量。指针变量的值并非它所指向的内存位置所存储的值。我们必须使用间接访问来获得它所指向位置存储的值。当然直接访问的话需要通过变量,而变量名字与内存位置之间的关联并不是硬件所提供的,它是由编译器为我们实现的。所有这些变量给了我们一种更方便的方法记住地址——硬件仍然原创 2016-11-01 14:38:43 · 1371 阅读 · 0 评论 -
文件操作
#include #include #include #include #include #define BUFF_SIZE 1024#define OFFSET 1024int main(int argv , char * argc[]){char * filename;printf("please input the file name /n");原创 2016-09-02 20:37:07 · 439 阅读 · 0 评论 -
有了这个列表,程序员不愁没练手的小项目了
有了这个列表,程序员不愁没练手的小项目了2016-06-16 Linux爱好者(点击上方蓝字,可快速关注我们)英文:Martyr2译者:伯乐在线读者 链接:http://blog.jobbole.com/49762/我经常看有人发帖问关于项目点子的事,也看到了很多回帖,我自己也回了一些常见的项目。不过我觉得转载 2016-08-31 10:52:39 · 2777 阅读 · 0 评论 -
Linux Socket编程(不限Linux)
Linux Socket编程(不限Linux)2016-07-12 Linux爱好者(点击上方公众号,可快速关注)来源:吴秦 链接:http://www.cnblogs.com/skynet/archive/2010/12/12/1903949.html“一切皆Socket!”话虽些许夸张,但是事实也是,转载 2016-08-31 10:46:51 · 409 阅读 · 0 评论 -
C语言的选择算法
初级思想,适合出学者。欢迎大牛补充。原创 2016-05-18 20:16:45 · 1002 阅读 · 0 评论 -
关于linux下 gcc 编译时for循环的报错。c99
今天写点程序,声明个人是小白 发现一个没有错的程序一直报错,百思不得其解。看了一下报错信息 恍然大悟erro: for loop initial declaration are only allowed c99 mode故意思是我的for循环形式只是在c99下是允许的 。所以要修改一下我的for循环模式c语言有很多标准 以前的标准不允许for(i原创 2015-10-06 20:31:57 · 5876 阅读 · 3 评论 -
什么是EOF ,如何输入EOF
什么是EOF ,如何输入EOF ,详细解释原创 2015-10-04 19:56:37 · 3206 阅读 · 0 评论 -
typedef struct 小结
1 结构体定义 struct [结构体姓名]{// 里面定义变量等内容}[可选内容];例如struct point{};在使用时可以struct point pt={220,200};这就是多结构 point类型的声明以及初始化,看好形式,切记.struct point{}x ;这个就类似于int x;所以我们就很好理解t原创 2015-10-19 09:09:23 · 432 阅读 · 0 评论