C语言
小小攻城师
这个作者很懒,什么都没留下…
展开
-
open和fopen的区别
<br /><br />转载从:http://blog.csdn.net/hairetz/archive/2009/05/05/4150193.aspx<br /> <br />open和fopen的区别:1.缓冲文件系统缓冲文件系统的特点是:在内存开辟一个“缓冲区”,为程序中的每一个文件使用,当执行读文件的操作时,从磁盘文件将数据先读入内存“缓冲区”, 装满后再从内存“缓冲区”依此读入接收的变量。执行写文件的操作时,先将数据写入内存“缓冲区”,待内存“缓冲区”装满后再写入文件。由此可以看出,内存 “缓冲区转载 2011-03-19 00:53:00 · 918 阅读 · 0 评论 -
C语言运算符优先级
优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右 ()圆括号(表达式)/函数名(形参表) .成员选择(对象)对象.成员名转载 2013-03-19 14:46:03 · 923 阅读 · 0 评论 -
Linux内核学习之链表
文章参照任桥位Linux内核修炼之道3.6节编写。在Linux内核中大量地方使用了链表这个数据结构。相信科班出身的学生或者自己学习过数据结构的同学都不陌生,不错,他就是最简单的线性结构——链表。不过,在内核当中,一般采用的都是循环双联表的数据结构。因为源码有三百多行我就不贴在这里,有兴趣的去下载一下:http://download.csdn.net/detail/huiguixian/3889原创 2011-12-07 09:10:36 · 1418 阅读 · 0 评论 -
Makefile详解——从入门到精通
转自ChinaUnix,作者gunguymadman,陈皓。链接地址:http://www.chinaunix.net/jh/23/408225.html。写的相当不错很详细,只是有点多,当作一个参考手册非常不错,所以转过来,顺便整理一下。概述 —— 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉转载 2011-12-07 14:39:07 · 7290 阅读 · 1 评论 -
GCC扩展
转自候佩CSDN博客,地址:http://blog.csdn.net/mydo/article/details/3738336GNC CC是一个功能非常强大的跨平台C编译器,它对C 语言提供了很多扩展,这些扩展对优化、目标代码布局、更安全的检查等方面提供了很强的支持。本文把支持GNU 扩展的C 语言称为GNU C。 Linux 内核代码使用了大量的 GNU C 扩展,以至于能够编译 Li转载 2011-12-06 11:36:15 · 3997 阅读 · 0 评论 -
字符编码解析
转自:http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html字符编码笔记:ASCII,Unicode和UTF-8作者: 阮一峰日期: 2007年10月28日今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料。结果,这个转载 2011-10-20 11:08:10 · 1200 阅读 · 0 评论 -
VC中结构体内存分配问题透析(sizeof)
<br />【原文地址】http://xfeng.bloghome.cn/posts/53651.html在一次面试中,遇到了VC中处理结构体的问题,由于平时没留意,没有回答出来,感觉很不爽。回来后,认真分析了下,查了些资料,终于找到原因,故以本文给出解答。<br /> 本文首先提出了处理VC++中结构体时应注意的一个问题,然后详细分析了存在该问题的原因,最后做实战训练。<br /> 注意:<br /> (1)在VC下,下面各类型占字节数为:char->unsigned int转载 2011-04-27 18:37:00 · 1964 阅读 · 2 评论 -
gcc命令详解
GCC编译程序时:预处理、编译、汇编、链接各个步骤。GCC添加头文件搜索目录,加入库文件搜索目录,添加静态库。原创 2011-05-26 12:05:00 · 1351 阅读 · 0 评论 -
gcc不能编译gdbm的程序
gcc无法编译gdbm程序报错:undefined reference to `dbm_open'原创 2011-05-26 11:46:00 · 2289 阅读 · 0 评论 -
深入解析序列点
什么是序列点?如何避免由序列点造成的未定义的行为?怎么判断序列点呢?原创 2011-05-22 23:16:00 · 5983 阅读 · 7 评论 -
认识(大端--小端)端模式
端模式(Endian)的这个词出自Jonathan Swift书写的《格列佛游记》。这本书根据将鸡蛋敲开的方法不同将所有的人分为两类,从圆头开始将鸡蛋敲开的人被归为Big Endian,从尖头开始将鸡蛋敲开的人被归为Littile Endian。小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开。在计算机业Big Endian和Little Endian也几乎引起一场战争。在计算机业界,Endian表示数据在存储器中的存放顺序。下文举例说明在计算机转载 2011-05-16 20:13:00 · 1705 阅读 · 2 评论 -
简要记录浮点型数据的二进制存储格式
float和double类型在计算机内是如何存储的呢?原创 2011-05-16 17:29:00 · 6568 阅读 · 2 评论 -
深入解析C语言声明
<br /><br />如果说C语言声明很简单的人不是牛人就是还没入门。本文来讲解C语言的声明的一些基本内容,很多内容参考《c专家编程》。首先由一个最简单的问题引入,你知道 int * p[5] 和 int (*p)[5] 的区别在哪里吗?把后面的答案遮到,想想。也许你知道反正一个是含有五个指向整型的指针元素的指针数组,另一个是指向一个拥有5个整型元素的数组的指针,具体呢?<br />int *p[5]是一个含有五个整型指针的数组,int(*p)[5]是一个指向5个整型元素的数组指针。如果你能分清楚,恭喜你原创 2011-05-14 09:52:00 · 3471 阅读 · 17 评论 -
C语言Static详解
因为在很长一段时间里面一直在写面向对象的东西,比如用C#和Java来写东西,习惯了成员变量和成员函数。对static的了解仅限于他的生命期 在类中,而不是在对象,它为所有的类的对象所共享。但是在C语言里面他究竟有什么意思呢? 第一、静态局部变量(static) 众所周知,局部变量在进入该局部作用域时自动创建,离开时自动销毁,即所谓的块作用域。块作用域可以防止命名冲突,有助于帮助函数独立 化,但是有时候会有特别的需求,比如,统计一个递归函数递归调用了多少次。这个时原创 2011-03-19 14:20:00 · 1012 阅读 · 0 评论 -
__attribute__((constructor)|(destructor)(PRIORITY))
在前面的>关于object files的内容中,有看到使用自定义段的部分内容,(如果关于object files的内容不了解的话,可以去参考>这本书或者去wiki,其中也有关于段的解释,也可以称作节区.) 可以通过硬编码实现自定义段. 1__attribute__ ((section("name"))) ....转载 2014-10-31 14:02:25 · 2565 阅读 · 0 评论