linux
过圆心圈圈圆心
这个作者很懒,什么都没留下…
展开
-
可变参数 ... 和__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 · 624 阅读 · 0 评论 -
删除查找的文件
删除查找到的文件原创 2022-07-14 11:08:07 · 378 阅读 · 0 评论 -
strlen的小陷阱
strlen的小陷阱strlen malloc 一起使用的注意事项原创 2021-12-02 14:10:06 · 780 阅读 · 0 评论 -
启动代码 START.s 和u-boot区别&联系
注意:很多初学者总是将启动代码和Bootloader联系在一起,这是错误的什么是启动代码? 启动代码是系统上电或者复位后运行的第一段代码,是进入C 语言的main 函数之前需要执行的那段汇编代码。启动代码有何用? 它的作用是在用户程序运行之前对系统硬件及软件环境进行必要的初始化并在最后使程序跳转到用户程序。它直接面对ARM 处理器内核及硬件控制器进行编程原创 2016-11-28 12:14:14 · 905 阅读 · 0 评论 -
进程的先后
#include#include#include#includeint main(void){ pid_t resut; resut=fork(); if(resut ==0) { printf(" this is in the child progress \n "); printf("my father PID is %d \n", getppid()原创 2017-02-27 22:17:44 · 460 阅读 · 0 评论 -
ps linux 指令
USER 用户名UID 用户ID(User ID)PID 进程ID(Process ID)PPID 父进程的进程ID(Parent Process id)SID 会话ID(Session id)%CPU 进程的cpu占用率%MEM 进程的内存占用率VSZ 进程所使用的虚存的大小(Virtual Size)RSS原创 2017-02-21 21:05:16 · 514 阅读 · 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 评论 -
volatile
一般说来,volatile用在如下的几个地方:1、中断服务程序中修改的供其它程序检测的变量需要加volatile;2、多任务环境下各任务间共享的标志应该加volatile;3、存储器映射的硬件寄存器通常也要加volatile说明,因为每次对它的读写都可能由不同意义;另外,以上这几种情况经常还要同时考虑数据的完整性(相互关联的几个标志读了一半被打断了重写),在1中可以通过关中断来实现原创 2017-03-14 20:02:19 · 287 阅读 · 0 评论 -
fgetc和getc的区别 The function getchar is defined to be equivalent to getc(stdin). The difference betwee
fgetc和getc的区别The function getchar is defined to be equivalent to getc(stdin). The difference between the first two functions is that getc can be implemented as a macro, whereas fgetc cannot be转载 2017-06-20 20:32:11 · 530 阅读 · 0 评论 -
DNW字符乱码的原因及解决办法w哦
dnw乱码解决方案,很简单原创 2016-11-27 15:33:40 · 1488 阅读 · 1 评论 -
在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 评论 -
fcntl
repost 转载的 mark 一下转载 2016-06-10 20:29:41 · 496 阅读 · 0 评论 -
终端接口
POSIX终端接口 ?很多系统都支持POSIX终端(串口)接口。程序可以利用这个接口来改变终端的参数,比如,波特率,字符大小等等。要使用这个端口的话,你必须将头文件包含到你的程序中。这个头文件中定义了终端控制结构体和POSIX控制函数。与串口操作相关的最重要的两个POSIX函数可能就是tcgetattr(3)和tcsetattr(3)。顾名思义,这两个函数分别用来取得设设置终端的属原创 2016-06-10 20:40:51 · 3805 阅读 · 0 评论 -
Vim新手节省时间的10多个小技巧
Vim新手节省时间的10多个小技巧提交我的留言加载中 已留言Vim新手节省时间的10多个小技巧 2016-04-28Linux爱好者 Linux爱好者Linux爱好者微信号 LinuxHub 功能介绍 伯乐在线旗下账号,「L转载 2016-07-01 09:26:53 · 396 阅读 · 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 · 438 阅读 · 0 评论 -
解决Program received signal SIGSEGV, Segmentation fault.的辛酸
最近写一个算法很简单,涉及到链表的归并,在追求速度的时候,尽最大程度上使用了指针,然而却带来了异常灾难。编译通过,在debug的时候,我看见了这个。。。。。Program received signal SIGSEGV, Segmentation fault。omg,我准备解决这个问题,耗费了我整整一天来review代码。 其实解决这个问题很简单,只是我们没有抓住一个关键点。原创 2016-10-21 15:45:27 · 74780 阅读 · 3 评论 -
C在linux 下完成 引用传递
计算机内存中的每个位置都由一个地址标识,通常,邻近的内存位置合成一组,这样就允许存储更大范围的值,指针就是它的值表示内存地址的变量。指针变量的值并非它所指向的内存位置所存储的值。我们必须使用间接访问来获得它所指向位置存储的值。当然直接访问的话需要通过变量,而变量名字与内存位置之间的关联并不是硬件所提供的,它是由编译器为我们实现的。所有这些变量给了我们一种更方便的方法记住地址——硬件仍然原创 2016-11-01 14:38:43 · 1371 阅读 · 0 评论 -
armlinuxgcc 安装经验
gedit /etc/environment添加/usr/local/arm/4.4.3/binsource /etc/environment安装完毕。arm-linux-gcc -v 查看可以看到版本信息。但是用arm-linux-gcc编译.c文件时还是会报错:error while loading shared libraries: libstdc++.so.6: cannot原创 2016-11-29 22:22:11 · 410 阅读 · 0 评论 -
测试 arm-linux-gcc
写下下面的Hello World程序,保存为hello.c #include int main(int argc, char *argv[]) { printf("Hello World!\n"); return 0; }执行下面的命令:$ arm-linux-gcc hello.c -o hello$ fi原创 2016-11-30 11:36:54 · 581 阅读 · 0 评论 -
linux ps指令
名称:ps使用权限:所有使用者使用方式:ps [options] [--help]说明:显示瞬间行程 (process) 的动态参数:ps的参数非常多, 在此仅列出几个常用的参数并大略介绍含义-A 列出所有的进程-w 显示加宽可以显示较多的资讯-au 显示较详细的资讯-aux 显示所有包含其他使用者的行程###############转载 2016-05-18 17:09:44 · 574 阅读 · 0 评论