- 博客(96)
- 资源 (11)
- 收藏
- 关注
原创 I/O多路复用之select函数分析
转载前注明出处,欢迎转载分享如果一堆的client.c与server.c进行连接的话一定会产生很多的进程,也就是说每当来一个客户端请求,就会产生一个进程来服务,然而进程不可能无限制的产生,所以为了解决一对一占用资源的连接方式,引入了IO复用。即:一个进程可以同时对多个客户请求进行服务。I/O复用的适用如下:当客户处理多个文件句柄时必须使用。当一个客户同时处理多个套接口时,而这种情况
2017-04-18 10:06:33 811
原创 C/S架构的简单文件传输系统的实现
转载前注明出处欢迎转载分享实现代码github仓库地址:戳这里(https://github.com/chensguo8099/network_programming/tree/master/Serv_sendfiles_to_Client)课程要求:相关函数:(一)C/S即客户端(client)与服务器(server),简单文件传输系统的实现运用了网络编程中socket套接字等
2017-04-18 10:06:30 8200 3
原创 动态申请内存及相关补充
转载前注明出处 欢迎转载分享void*malloc(int size);对于malloc来说,如果不能分配空间,那么返回NULL,如果请求空间大小为0即malloc(0),则返回NULL或一个有效的指针。void*calloc(int n, int size);函数返回值为void型指针。如果执行成功,函数从堆获得size*n的字节空间,并返回该空间的首地址。若执行失败,函数返回
2017-04-18 10:06:27 577
原创 编译预处理
转载前注明出处,欢迎转载分享程序执行前程序执行前经历了:预处理器->编译器->汇编器->链接器 1)预处理过程:处理所有注释,以空格代替将所有#define删除,并展开所有宏定义处理条件编译指令#if,#ifdef,#elif,#else,#endif处理#include,展开被包含的文件保留编译器需要使用的#pragma指令预处理指令:1
2017-04-18 10:06:24 471
转载 关于Git的安装
原文地址:关于Git的安装作者:兴儿醉安装 Git是时候动手尝试下 Git了,不过得先安装好它。有许多种安装方式,主要分为两种,一种是通过编译源代码来安装;另一种是使用为特定平台预编译好的安装包。从源代码安装若是条件允许,从源代码安装有很多好处,至少可以安装最新的版本。Git的每个版本都在不断尝试改进用户体验,所以能通过源代码自己编译安装最新版本就再好不过了。有些 Linux版本自
2017-04-18 10:06:22 285
转载 gcc与g++的区别(转贴)
原文地址:gcc与g++的区别(转贴)作者:BigSam78Sam在上一篇帖子中提到:当使用xxx.c.并使用gcc编译时,会有重定义无法检测出来的现象。今天学习一下gcc与g++的区别。Sam之前在leadtek作嵌入式时,与Milong谈过gcc与g++的区别,曾认为gcc就是C方式编译,g++就是C++方式编译。现在才知道是不对的。误区一:gcc只能编译c代码,g++只能编译c+
2017-04-18 10:06:19 306
原创 Linux-Centos下的git配置使用
转载前注明出处,欢迎转载分享第一步:创建一个本地仓库1mkdir my_repository //创建仓库进入该目录:1git init //git的初始化 生成.git隐藏文件第二步:配置.git文件(以我自己的git为例)12git config --global use
2017-04-18 10:06:17 879
原创 C语言符号技巧总结
转载前注明出处,欢迎转载分享接续符:\可以作为接续符和转义符,当作为接续符(\)使用时:编译器会将反斜杠剔除,跟在反斜杠后面的字符自动解到前一行在接续单词时,反斜杠之后不能有空格,反斜杠的下一行之前也不能有空格接续符适合在定义宏代码块时使用来看如下代码: C Code 12345678910111213141516171
2017-04-18 10:06:14 411
原创 Centos安装gcc及g++
Centos支持yum安装,安装软件一般格式为yum install (file),注意安装时要先称为root用户。按照这个思路,我想安装过程如下:安装gcc:yum install gcc安装g++:yum install g++实际操作过程发现,只能有gcc安装成功,而g++安装失败,提示g++ command notfound。上网查了一下,正确安装应该是:yum insta
2017-04-18 10:06:11 1354
原创 结构体及柔性数组
转载前注明出处,欢迎转载分享结构体:大小:结构体的大小不是说结构体中的每个变量的数据类型之和就是结构体的大小,而是按照内存对齐的方式来计算的。123456789struct test{ char a; int b; char c; char *d; short e; long long f
2017-04-18 10:06:09 1557
原创 const和volatile详解
转载前注明出处,欢迎转载分享const详解:const可以修饰变量,数组,指针,还可以修饰函数。const修饰变量:const修饰的变量为只读变量,不能给只读变量直接赋值(即const修饰的变量不能出现在等号左边),但是可以通过指针访问这一块内存区域然后间接修改该值。const修饰数组:C中const修饰的数组是只读的,const修饰的数组空间不可被改变(即数组内存放的值)。代码如
2017-04-18 10:06:06 1871
原创 数据类型及auto、static、register…
转载前注明出处,欢迎转载分享。说到C中的数据类型,大家都知道,int,short,char等等。数据类型可以理解为固定内存大小的别名。数据类型是创建变量的模子。就像做蛋糕一样,我们都会用一个模子去压蛋糕来让它得到期望的样子。那什么是变量?上图是内存图:当我们讨论某块内存区域存储的值时,我们不可能总是说2000到2002地址上存储的值是多少多少吧,鉴于如此麻烦的表述,于是我们为了方
2017-04-18 10:06:03 1983
原创 对C/C++内存分配的思考与总结
转载前注明出处,欢迎转载分享下图为操作系统内存地址空间图:在C/C++中通常可以把内存划分为:栈、堆、自由存储区、全局(静态)存储区、常量存储区一个C/C++编译的程序占用的内存分为以下部分:1.栈(stack):存储局部变量,函数参数,返回地址等。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指
2017-04-18 10:06:00 310
转载 新浪博客如何插入代码(其他…
原文地址:新浪博客如何插入代码(其他博客应该也可以)作者:ttang 首先,我没看到新浪博客有这个功能模块(像csdn,cnblog都是有插入代码的功能的) 然后,我就想找一个解决方案,找了很久,其一是发芽网http://fayaa.com/,但是反应很慢,打开一个网页要半天,不是我缺乏耐心,是它实在刷新不出来……(你可以试试打开这个链接,看能不能打得开http://fayaa.co
2017-04-18 10:05:57 2376
原创 浅析fork系统调用
转载前注明出处,欢迎转载分享fork函数Linux下创建新进程的系统调用是fork,其定义如下:#include < sys/types.h>#include < unistd.h>pid_t fork ( void );该函数每次调用返回两次,其中:在父进程中返回的是子进程的 PID在子进程中返回值是0fork函数调用失败则返回-1于是我们可以用pid = fork(
2017-04-18 10:05:51 532
原创 浅谈char类型的范围
在C语言中我们知道signedchar类型的大小范围是-128~127.signed char类型占了1个字节(=8位),我们知道有一种可以计算数据类型范围的公式是整型范围公式:-2^(n-1)~2^(n-1)- 1,那么signed char类型的范围就是-2^7~2^7-1. 同样的对于无符号unsigned char类型所表示的数值范围可用二进制表示换即为:0000 00
2017-04-18 10:05:45 2127
常用latex公式表
2020-10-22
google三剑客之谷歌文件系统
2020-10-22
Python3.6.5标准库文档(完整中文版).pdf
2020-10-22
git通俗易懂教程
2019-02-24
rapidjson-zh
2019-02-24
Linux高性能服务器编程.pdf
2017-08-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人