每日拾一C贝壳
文章平均质量分 56
Love_Hulidear
分享快乐,用心写博客
展开
-
【每日一C之二十二】strncpy与strcpy的区别
每日一C之strncpy与strcpy的区别 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:两者均用于字符串复制,strncpy是strcpy的安全版本。 今天腾讯面试,面试官问到这个问题。在这里,感谢那位和善的面试官哥哥陪我聊了快一个小时,让我发现很多自身的问题。原创 2014-04-16 22:14:32 · 5658 阅读 · 2 评论 -
【每日一C之十三】C 语言inline内联函数
每日一C之include 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C语言inline内联函数的设立初衷与用法 初衷:引入inline内联函数的目的:减少函数调用的开销。在函数返回值前加限定词inline,编译器会在源文件适当的位置生成函数代码的副本,以避免函数调用。函数角度来看,相比inline,宏虽同样能原创 2014-04-07 13:03:22 · 3792 阅读 · 2 评论 -
【每日一C之二十四】sizeof结构体探究
每日一C之C语言#预处理 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C++结构体支持成员函数,原创 2014-04-24 11:19:59 · 4587 阅读 · 0 评论 -
【每日一C之二十三】堆与栈的深入理解
每日一C之堆与栈的深入理解 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:内存中堆与栈的深入理解,认识一个清晰地内存 如果不清楚内存分配,可阅读【C解析之三】C语言的内存分配。 使用:栈由系统自动分配。如局部变量,系统会自动在栈中为其开辟空间。原创 2014-04-24 08:25:40 · 6451 阅读 · 4 评论 -
【每日一C之十四】指向函数的指针
每日一C之指向函数的指针 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:关于指向函数的指针pointer的那点事 C语言中,函数本身不是变量,但可以定义指向函数的指针,这类指针称为函数指针,可以赋值,做函数参数等。 1.定义函数指针:函数指针的定义要同指向函数保持一致,这种原创 2014-04-08 17:33:24 · 7379 阅读 · 2 评论 -
【每日一C之十六】C语言位字段
每日一C之位字段 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C语言位字段的解析与用法 存储空间很有限的情况下,可以考虑利用C语言位字段将多个数据保存在一个机器字。机器字指计算机一次能处理数据的位数,一般所说的32位系统即指其机器字长为32。 1.定义位字段:C语言位字段定义方法:原创 2014-04-09 16:01:18 · 11194 阅读 · 0 评论 -
【每日一C之十五】函数指针的思考
每日一C之函数指针的思考 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:函数指针能带来什么?它让哪些设想变为可能? 1.函数的困境: 人们对编程语言的苛求永远没有上限,总是希望它能更简单,更快速,更方便地实现人们心中的想法。代码的可重用性便是其中之一,提高代码可重用性很大一部分取决于函数的可重用性原创 2014-04-08 18:37:11 · 7460 阅读 · 9 评论 -
【每日一C之十八】自引用结构
每日一C之自引用结构 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:解自引用结构之疑惑,struct结构体自引用解析 1.自引用结构: 结构体内包含指向自身的指针,这类结构体称为自引用结构。常用的链表节点便是自引用结构。 struct no原创 2014-04-11 15:30:22 · 4926 阅读 · 1 评论 -
【每日一C之十九】数组作为参数
每日一C之数组作为参数 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C语言中,作为参数的数组不能直接传递。 1.参数指针化: 如果使用数组名作为函数参数,该数组名会被转化为指向该数组首元素的指针。如: intfoo(int Array[ ]){ ... }原创 2014-04-11 20:21:30 · 4032 阅读 · 0 评论 -
【每日一C之二十】 悬空指针
每日一C之数组作为参数 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳原创 2014-04-11 22:07:42 · 3746 阅读 · 2 评论 -
【每日一C之二十一】判断栈增长方向
每日一C之判断栈增长方向 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:一个小程序判断栈增长方向,揭示了函数调用的内幕。 关于函数调用的更多精彩【C解析之五】函数-你不知道的事。 思考?: 如何判断栈增长的方向?函数被调用时,会在栈区构建函数运行环境并分配临时变量存储空原创 2014-04-13 21:43:40 · 6479 阅读 · 4 评论 -
【每日一C之八】C语言static用法
每日一C之static用法 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C语言static的用法与static修饰变量的空间存储特征。 要点: static在C中主要有两个作用,一修饰作用域;二修饰生存期 1.static修饰全局变量:修饰作用域原创 2014-04-01 19:07:55 · 4140 阅读 · 1 评论 -
【每日一C之十一】C语言volatile
每日一C之volatile 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C语言volatile用于避免因编译器优化导致的错误。 CPU访问内存的速度远快于访问设备地址,访问寄存器速度又快于内存,为了提高程序的运行速度,编译器会对程序进行优化。如: buffer=Read(0xEE);原创 2014-04-03 21:51:48 · 3764 阅读 · 3 评论 -
【每日一C之十七】#ifndef与#pragma once的用法与区别
每日一C之#ifndef与#pragma once 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:#ifndef与#pragma once都用于避免同一个.h头文件被include多次。 .h头文件头文件一般包含函数定义,变量定义等,多次#include则会在导致重定义错误。原创 2014-04-10 23:26:23 · 5847 阅读 · 5 评论 -
【每日一C之一】included<>与include""
每日一C排序之include 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C程序 #include 与#include"stdio.h" 的区别 1. #include引用的是编译器的类库路径里面的头文件: 2. #include" "引用的是程序目录里相对路原创 2014-03-27 23:46:00 · 5427 阅读 · 5 评论 -
【每日一C之二】sizeof 与 strlen
每日一C排序之sizeof与strlen 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C语言sizeof与strlen的区别 1. sizeof是操作符,strlen是库函数。 2. sizeof的参数可以使数据类型,变量,对象,结构体,数组等,返回其原创 2014-03-28 13:10:38 · 4959 阅读 · 0 评论 -
【每日一C之三】struct字节对齐方式
每日一C之struct字节对齐方式 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:结构体struct是多个相互关联数据的集合,这些数据以整体形式存储在内存。struct A{ char a; //char占1个字节 int b; //int 占4个字节 short c; //原创 2014-03-28 19:14:55 · 5321 阅读 · 0 评论 -
【每日一C之四】C语言#预处理
每日一C之C语言#预处理 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:预处理,又称预编译,是源代码.c到执行.exe的第一步处理。 1.文件包含:#include,预处理会用stdio.h文件的内容 替代这一行。 2.宏展开:#define定义的宏,预处理原创 2014-03-29 12:07:42 · 3326 阅读 · 0 评论 -
【每日一C之五】C静态库与动态库
每日一C之C静态库与动态库 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C语言的静态库与动态库对比分析,各有长短 库: 指由标准常用函数编译而成的文件,旨在提高常用函数的可重用性,减轻开发人员负担。常用的sdtio.h,math.h等库便是C函数库的冰山一角。 1.静态库原创 2014-03-29 13:35:16 · 4375 阅读 · 4 评论 -
【每日一C之七】union共同体及判断系统大小端
每日一C之union共同体 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C语言union共同体的空间存储及用法。union共同体用法: union 共同体名称 { 数据类型 成员数据;原创 2014-03-31 14:04:02 · 6213 阅读 · 5 评论 -
【每日一C之九】C语言const用法
每日一C之C语言const用法 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C语言const能在一定程度上提高程序的安全性与可靠性。 1.const修饰只读变量:const 数据类型 变量名 如 const int a = 10 ; const修饰后,变量成为只读原创 2014-04-02 20:35:24 · 3378 阅读 · 1 评论 -
【每日一C之十】const与define区别
每日一C之const与define区别 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:不得不提,设立const关键字的目的:取代define,消除define缺点的同时继承其优点。 就定义常量而言的区别: 1.作用层次不同: define作用在文本层次,在预处理阶段单纯在文本上的替换原创 2014-04-02 21:52:20 · 4782 阅读 · 1 评论 -
【每日一C之六】new 与 malloc
每日一C之new与malloc 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:C/C++中new/delete与malloc/free小辨析 区别: 1.new/delete是C++运算符,malloc/free是C函数。 2.new同时调用构造函数,d原创 2014-03-30 12:05:35 · 4224 阅读 · 1 评论 -
【每日一C之十二】指针与引用的区别
每日一C之指针与引用 每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。 今日贝壳:指针:一个数据对象的地址与引用:一个数据对象的别名之间的区别 区别: 1. 空值:指针可以为空,悬空指针问题由此而来;引用无法为空,只有存在的数据对象才有别名。 2. 改变:指针可以更改;引用(别名)则不能易主原创 2014-04-05 20:34:45 · 6708 阅读 · 8 评论