不灭的焱

革命尚未成功,同志仍须努力

作者:php-note.com  发布于:2019-09-26 16:50  分类:Linux_C  编辑

C语言 字符指针(指向字符的指针)详解

作者:php-note.com  发布于:2019-09-26 14:27  分类:Linux_C  编辑

C语言字 符数组 和 字符串 详解

作者:php-note.com  发布于:2019-09-23 10:42  分类:Linux_C  编辑

用途一:定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如:

char *pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, 和一个字符变量;
作者:php-note.com  发布于:2019-09-20 13:10  分类:Linux_C  编辑

sizeof是何方神圣?sizeof乃C/C++中的一个操作符(operator)是也,简单的说,其作用就是返回一个对象或者类型所占的内存字节数。

作者:php-note.com  发布于:2019-09-15 23:30  分类:Linux_C  编辑
void Function(void) {
    char *p = (char *) malloc(100 * sizeof(char));
}

就这个例子,千万不要认为函数返回,函数所在的被销毁指针(变量)也跟着销毁,申请的内存也就一样跟着销毁了!这绝对是错误的!因为申请的内存在上,而函数所在的栈被销毁跟堆完全没有啥关系。所以,还是那句话:记得释放 free()!

作者:php-note.com  发布于:2019-09-15 15:27  分类:Linux_C  编辑

malloc与calloc用来动态分配内存空间,而realloc则是对给定的指针所指向的内存空间进行扩大或者缩小。

作者:php-note.com  发布于:2019-09-15 10:41  分类:Linux_C  编辑

常用 头文件 及 包含函数

作者:php-note.com  发布于:2019-09-14 18:38  分类:Linux_C  编辑

epoll 是Linux内核中的一种可扩展IO事件处理机制,最早在 Linux 2.5.44内核中引入,可被用于代替POSIX select 和 poll 系统调用,并且在具有大量应用程序请求时能够获得较好的性能( 此时被监视的文件描述符数目非常大,与旧的 select 和 poll 系统调用完成操作所需 O(n) 不同, epoll能在O(1)时间内完成操作,所以性能相当高),epoll 与 FreeBSD的kqueue类似,都向用户空间提供了自己的文件描述符来进行操作。

作者:php-note.com  发布于:2019-09-14 11:35  分类:Linux_C  编辑

select,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据从内核拷贝到用户空间。

作者:php-note.com  发布于:2019-09-14 10:51  分类:Linux_C  编辑

epoll特点好处:

  • 与 select,poll 一样,但是增加了对I/O多路复用的技术
  • 只关心“活跃”的链接,无需遍历全部描述符集合
  • 能够处理大量的链接请求(系统可以打开的文件数目)
作者:php-note.com  发布于:2019-09-13 15:43  分类:招聘/面试/总结  编辑

如题,作者07年就开始上班了,所以12年职业生涯无需奇怪。从2009年就开始搞PHP直到现在,12年过去了,白驹过隙。

作者:php-note.com  发布于:2019-09-10 23:27  分类:Linux_C  编辑

Linux 错误码大全(errno-base.h 和 errno.h)

作者:php-note.com  发布于:2019-09-10 22:11  分类:Linux基础  编辑

今天在以SSH免密方式,拉取git代码(git pull)时,报错:

WARNING:Your password has expired 
作者:php-note.com  发布于:2019-09-08 23:33  分类:Linux_C  编辑
int accept(int s, struct sockaddr *addr, int *addrlen);

accept()用来接受参数s 的socket 连线。参数s 的socket 必需先经bind()、listen()函数处理过,当有连线进来时accept()会返回一个新的socket 处理代码,往后的数据传送与读取就是经由新的socket处理,而原来参数s 的socket 能继续使用accept()来接受新的连线要求。

作者:php-note.com  发布于:2019-09-08 14:13  分类:杂七杂八  编辑

1、bzero()不是ANSI C函数,其起源于早期的Berkeley网络编程代码,但是几乎所有支持套接字API的厂商都提供该函数;

2、memset()为ANSI C函数,更常规、用途更广;

作者:php-note.com  发布于:2019-09-08 10:01  分类:电脑/软件使用  编辑

修改 CLion VM options

Help -> Edit Custom VM Options 追加如下内容:

-Dconsole.encoding=UTF-8
-Dfile.encoding=UTF-8
作者:php-note.com  发布于:2019-09-07 18:17  分类:Linux_C  编辑

在C语言中,如果一些函数被频繁的调用,不断地用函数入栈,即函数栈,则会造成栈空间或者栈内存的大量消耗,为了解决这个问题,特别的引入了inline关键字,表示为内联函数。

作者:php-note.com  发布于:2019-09-05 23:24  分类:Linux软件安装/优化  编辑

CentOS 6.10 编译安装 gdb-7.12.1

作者:php-note.com  发布于:2019-09-01 23:15  分类:Linux软件安装/优化  编辑

CMake 最新版本 3.10.2 需要 C++11 支持,而 gcc4.8 以下并未包含,,,3.9.6 版本并不需要 C++11,那就安装 CMake-3.9.6