C基础
文章平均质量分 76
EMH1899
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C语言中的'0'、'\0'、0
'\0'就是8位的00000000,因为字符类型中并没有对应的这个字符,所以这么写。在数值类型里就代表数字0。数值类型存储时,最高位决定正负号,其他位都为0可不就是0了么?'\0'是转译字符,意思是告诉程序,这不是字符0,我要的是数字0的2进制直接放进来,因为acsii码的0可不是000000000是整型,'\0'、'0'是字符char型,在内存中都用一个字节表示,其实都是int型,对...原创 2018-12-07 15:40:03 · 11784 阅读 · 0 评论 -
C语言中char s[]与char *s的不同
首先看一下C语言中下面两个语句的不同:char s[10] = “abcde";char *s = "abcde";两者不同的关键点如下:(1)数组char s[10] = "abcde"s是一个数组;sizeof(s) = 10 bytesa与&a是一样的abcde存储在内存的栈空间中char s[10] = "abcde";s = "hello";这是非法的...原创 2018-12-07 14:43:48 · 8846 阅读 · 2 评论 -
Linux进程间通信之pipe
1、管道(PIPE) 从概念上说,管道是两个进程之间的一个connection,因此一个进程的标准输出就变成了另一个进程的标准输入。在Unix操作系统中,管道用于进程间通信(inter-process communication).(1)Pipe是一种单向的通信方式,一个进程向管道中写数据,另一个进程从这个管道中读,数据只能向一个方向流动,需要双向通信时,要建立起两个管道。打开...原创 2018-12-12 16:55:58 · 541 阅读 · 0 评论 -
Linux 系统调用 wait()和waitpid
一个进程在终止时会关闭所有文件描述符,释放在用户空间分配的内存,但它的PCB还保留着,内核在其中保存了一些信息:如果是正常终止则保存着退出状态,如果是异常终止则保存着导致该进程终止的信号是哪个。这个进程的父进程可以调用wait或waitpid获取这些信息,然后彻底清除掉这个进程。我们知道一个进程的退出状态可以在Shell中用特殊变量$?查看,因为Shell是它的父进程,当它终止时Sh...原创 2018-12-12 15:13:47 · 917 阅读 · 0 评论 -
Linux 系统调用 dup()和dup2()
1、dup()dup()系统调用会创建文件描述符的一个拷贝:(1)新生成的文件描述符是进程中最小的未使用的文件描述符,0 、1 、2对应标准输入、标准输出、标准错误输出(2)如果拷贝成功,那么原始的和拷贝的文件描述符可能会交叉使用(3)两者都指向同一个打开的文件描述符,因此共享文件偏移量和文件状态标志语法:int dup(int oldfd);oldfd: 旧的文件描述...原创 2018-12-12 14:22:38 · 514 阅读 · 0 评论 -
C语言常用函数
1、snprintfchar a='a';char str[3];snprintf(str,sizeof(str),"%02x",a);解释如下:size是限定最终生成的dest的字符数,最多拷贝size-1个字符; 一般情况下size会取sizeof(dest),这是为了dst不溢出.在snprintf(dest, size, "str: %s\n", src)中如果size-...原创 2018-12-07 16:45:36 · 221 阅读 · 0 评论
分享