C语言开发总结(十八)

优秀程序员不得不知道的20个位运算技巧 一提起位运算,人们往往想到它的高效性,无论是嵌入式编程还是优化系统的核心代码,适当的运用位运算总是一种迷人的手段,或者当您求职的时候,在代码中写入适当的位运算也会让您的程序增加一丝亮点,最初当我读《编程之美》求“1的数目”时,我才开始觉得位...

2015-11-29 22:34:45

阅读数 357

评论数 0

C语言开发总结(十七)

浅析为什么char类型的范围是 —128~+127  在C语言中, signed char 类型的范围为-128~127,每本教科书上也这么写,但是没有哪一本书上(包括老师)也不会给你为什么是-128~127,这个问题貌似看起来也很简单容易, 以至于不用去思考为什么,不是有一个整型范围的...

2015-11-29 22:04:22

阅读数 326

评论数 0

C语言开发总结(十六)

sizeof() 与strlen()  sizeof 是C/C++的一种运算符,用来返回数据类型占用内存的字节数。返回类型是 size_t 其实就是 typedef unsigned int size_t;      它有三种形式:      1) sizeof( obj...

2015-11-28 23:21:39

阅读数 275

评论数 0

C语言开发总结(十五)

C语言宏定义 1、为什么要有宏定义?         代码中某个特定数值需要参与运算,而且该数值作用于多个地方,当需要对该数值进行修改时,希望只改动一个地方就能实现该数值的全部更新;即便某个数值只用到一次,当修改时也会面临搜索阅读大量代码、数值含义不明晰的问题;某些“操作块”封装成...

2015-11-28 22:20:12

阅读数 221

评论数 0

C语言开发总结(十四)

C语言位域的使用及其注意点 所谓“位域”是把一个字节中的二进位划分为几个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这样就可以把几个不同的对象用一个字节的二进制位域来表示。位域的定义和位域变量的说明位域定义与结构定义相仿,其形式为: struct 位域结...

2015-11-28 19:09:52

阅读数 342

评论数 0

C语言开发总结(十三)

C语言中没有main函数生成可执行程序的几种方法 1、define预处理指令 这种方式很简单,只是简单地将main字符串用宏来代替,或者使用##拼接字符串。示例程序如下: #include #define begin main int begin(void) { p...

2015-11-28 18:51:21

阅读数 566

评论数 0

C语言开发总结(十二)

C函数调用与堆栈的变化 转载自这个博客:http://www.cnblogs.com/dahai/archive/2011/07/29/2120651.html 感想:这个的堆栈的图示画的还是非常好的。。。。。。。,反汇编的注释也是相当通俗易懂,就是纳闷,我的反汇编的代码为嘛不好复...

2015-11-27 21:24:14

阅读数 230

评论数 0

C语言开发总结(十一)

单片机C语言模块化编程 下面让我们揭开模块化神秘面纱,一窥其真面目。      C语言源文件 *.c          提到C语言源文件,大家都不会陌生。因为我们平常写的程序代码几乎都在这个XX.C文件里面。编译器也是以此文件来进行编译并生成相应的目标文件。作为模块化编程的组成基础,我们所要实现的...

2015-11-27 20:56:14

阅读数 413

评论数 0

C语言开发总结(十)

exit和_exit的区别 exit()在结束调用它的进程之前,要进行如下步骤:  1.cleanup();  2.在atexit()注册的函数;  最后调用_exit()函数。。。  ‘exit()’与‘_exit()’有不少区别在使用‘fork()’,特别是‘vfork()’时变得很  突...

2015-11-27 15:34:55

阅读数 369

评论数 0

多个进程间共享动态链接库的原理

多个进程间共享动态链接库的原理  同样这个问题是我在面试总监的时候,总监问我的一个问题,这些天一直 忙活,都没有好好看书了,今天总结一下这个问题?为什么一个进程用完一个动态链接库以后另一个进程还可以继续使用呢?当时回答的很是笼统,只说对了答案的一半,现在就在这里好...

2015-11-27 15:04:56

阅读数 380

评论数 0

C语言开发总结(九)

Socket send函数和recv函数协议角度解释 1.send 函数 int send( SOCKET s, const char FAR *buf, int len, int flags );       不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数...

2015-11-27 14:01:14

阅读数 251

评论数 0

C语言开发总结(八)

基于C语言字符串函数的一些使用心得 就字符串的拼接函数为例strcat. 原型:extern char *strcat(char *dest,char *src); 用法:#include 功能:把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。 ...

2015-11-27 13:40:01

阅读数 249

评论数 0

移动终端访问互联网时socket的传输过程详解

http://www.zhihujingxuan.com/23124.html http://www.zhihu.com/question/23989027/answer/33611749 http://www.zhihu.com/question/26558233/answer/3342...

2015-11-26 21:20:34

阅读数 4025

评论数 0

手机如何上网?3G如何建立TCT连接?3G如何建立HTTP连接?

回答得最好的知乎: http://www.zhihujingxuan.com/23124.html TCP连接、Http连接与Socket连接 http://www.blogjava.net/thisliy/archive/2009/1...

2015-11-25 22:02:36

阅读数 405

评论数 0

C语言开发总结(七)

C语言字符串操作总结大全(超详细) C里面最困难部分居然是字符串! 1)字符串操作  strcpy(p, p1) 复制字符串  strncpy(p, p1, n) 复制指定长度字符串  strcat(p, p1) 附加字符串  strncat(p, p1, n) 附加指...

2015-11-25 21:58:15

阅读数 218

评论数 0

C语言开发总结(六)

内核态与用户态    内核态与用户态是操作系统的两种运行级别,intel cpu提供Ring0-Ring3三种级别的运行模式。Ring0级别最高,Ring3最低。其中特权级0(Ring0)是留给操作系统代码,设备驱动程序代码使用的,它们工作于系统核心态;而特权极3(Ring3)则给普通的...

2015-11-25 18:26:28

阅读数 328

评论数 0

C语言开发总结(五)

端口号的总结 端口号---具有网络功能的应用软件的标识号。注意,端口号是不固定的,即可以由用户手工可以分配(当然,一般在软件编写时就已经定义)。当然,有很多应用软件有公认的默认的端口,比如FTP:20和21,HTTP:80,TELNET:23等等,这里就不一一列举了。一个软件可以拥有多个端口号,...

2015-11-25 17:56:39

阅读数 242

评论数 0

C语言开发总结(四)

linux网络编程基础知识 网络编程,一定离不开套接口;那什么是套接口呢?在Linux下,所有的I/O操作都是通过读写文件描述符而产生的,文件描述符是一个和打开的 文件相关联的整数,这个文件并不只包括真正存储在磁盘上的文件,还包括一个网络连接、一个命名管道、一个终端等,而套接口就是系统进程和...

2015-11-25 17:45:44

阅读数 251

评论数 0

C语言开发总结(三)

c语言中static 用法总结   一、c程序存储空间布局 C程序一直由下列部分组成:       1)正文段——CPU执行的机器指令部分;一个程序只有一个副本;只读,防止程序由于意外事故而修改自身指令;       2)初始化数据段(数据段)——在程序中所有赋了初值的全局变量,...

2015-11-25 17:43:48

阅读数 209

评论数 0

C语言开发总结(二)

2.1 C语言 #error作用 #error 预处理指令的作用是,编译程序时,只要遇到#error 就会生成一个编译错误提 示消息,并停止编译。其语法格式为: #error error-message 注意,宏串error-message 不用双引号包围。遇到#error 指令时,错误信...

2015-11-20 17:58:37

阅读数 199

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭