C语言基础
james_hw
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
sprintf用法(很强大啊)
在找C下将数字转字符串函数时发现的,很不错。sprintf用法(转) printf可能是许多程序员在开始学习C语言时接触到的第二个函数(我猜第一个是main),说起来,自然是老朋友了,可是,你对这个老朋友了解多吗?你对它的那个孪生兄弟sprintf了解多吗?在将各种类型的数据构造成字符串时,sprintf的强大功能很少会让你失望。 由于sprintf跟printf在用法上几转载 2009-02-18 09:26:00 · 1103 阅读 · 0 评论 -
c陷阱与缺陷学习笔记
http://c.chinaitlab.com/c/basic/200907/789321.html 词法陷阱: 1 = 不同于==不要在程序中将两者写错,小心。将表达式与常量比较时,可将常量放在左边。 2 &和| 不同于&& 和 ||. 3 词法分析中的贪心法:每个符号应该包含尽可能多的字符。如果(编译器的)转载 2009-09-27 15:03:00 · 563 阅读 · 0 评论 -
嵌入式开发中用到的一些扩展关键字
data,bdata,idata,pdata,xdata,code存储类型与存储区http://blog.ednchina.com/xiaoxiaopig/279146/message.aspxbit是在内部数据存储空间中 20H .. 2FH 区域中一个位的地址,或者 8051 位可寻址 SFR 的一个位地址。code是在 0000H .. 0FFFFH 之转载 2009-11-09 16:19:00 · 942 阅读 · 0 评论 -
在struct中使用define的妙法
在看网络底层的程序时,看到以下格式的程序 struct a { struct T b; #define k b.k #define m b.m }data[10]; 这种程序第一次看到,后来有几位高人指点,才知道这样子声明的变量,可以直接访问T里面的成员变量,例如可以如下 data[0].k即相当于访问变量T里面的成员k 注意,原创 2009-11-19 13:45:00 · 4637 阅读 · 1 评论 -
进程间通信:Windows下进程间通信的手段
http://www.crazycoder.cn/DeveloperUtil/Article25637.html 摘 要随着人们对应用程序的要求越来越高,单进程应用在许多场合已不能满足人们的要求。编写多进程/多线程程序成为现代程序设计的一个重要特点,在多进程程序设计中,进程间的通信是不可避免的。Microsoft Win32API提供了多种进程间通信的方法,全面地阐述了这些转载 2010-02-22 09:47:00 · 629 阅读 · 0 评论 -
pragma comment的使用
转帖地址:http://www.cppblog.com/xczhang/archive/2008/01/10/40866.html 该宏放置一个注释到对象文件或者可执行文件。#pragma comment( comment-type [,"commentstring"] )comment-type是一个预定义的标识转载 2009-12-24 09:28:00 · 480 阅读 · 0 评论 -
c 语言中的字符串操作
http://blog.chinaunix.net/u1/41817/showart_342390.html6.5 怎样将字符串打印成指定长度? 如果要按表格形式打印一组字符串,你就需要将字符串打印成指定长度。利用printf()函数可以很方便地实现这一点,请看下例: # include转载 2010-03-11 11:20:00 · 1160 阅读 · 1 评论 -
C89和C99标准对比
http://blog.csdn.net/phlexii/archive/2006/06/30/855263.aspx GCC 支持C99,通过 --std = c99命令行参数开启。 例如:gcc --std = c99 test.c 1、增加restrict指针 C99中增加了公适用于指针的restrict类型修饰符,它是初始访问指针所指对象的惟一途径,转载 2010-05-21 09:50:00 · 676 阅读 · 0 评论 -
单字节校验方法
<br />今天看到一道面试题,关于单字节校验的方法的。<br />一个字节,bit7存放着bit0-bit6间bit为1的奇偶性,例如0x7,共有3个(奇数)bit位为1,所以首个bit为1,则整个字节是0x87.<br /> <br />需要设计一个sender和receiver系统来实现传输数据的准确性。<br /> <br />对于这个需求,我的想法是查表,原来是想建立一个2的7次方字节的数组来保存每个数的结果,后来一想其结果就0和1,用字节保存太浪费了,可以用位保存来优化。以下是简单的代码。<br原创 2010-08-28 17:28:00 · 3773 阅读 · 0 评论 -
正则表达式汇总
http://unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm 目录跳过目录本文目标如何使用本教程正则表达式到底是什么东西?入门测试正则表达式元字符字符转义重复字符类分枝条件反义分组后向引用零宽断言转载 2009-09-18 11:05:00 · 425 阅读 · 0 评论 -
Hash函数
http://blog.csdn.net/newrain021011/archive/2007/03/16/1531778.aspx Hash函数是一种映射关系,通过一种映射关系,将原本的字符串,数字或其他关键信息转换为一个索引值。用数学关系式表示为: index = function(key) 数序上有不同的映射关系,不同的key,有可能会获取相同的index,这转载 2009-09-11 10:46:00 · 743 阅读 · 0 评论 -
c语言创建文件夹函数
_mkdir("d://生产测试结果//后面板测试");//头文件 CreateDirectory证实在非vc的机器上不好用原创 2009-07-14 16:05:00 · 5404 阅读 · 0 评论 -
pragma pack(非常有用的字节对齐用法说明)
http://hi.baidu.com/zhanghuikl/blog/item/124ea7998108a9006e068c19.html 强调一点:#pragma pack(4)typedef struct{ char buf[3]; word a;}kk;#pragma pack()对齐的原则是min(sizeof(word ),4)=2,转载 2009-07-24 09:19:00 · 61178 阅读 · 2 评论 -
论调用约定
http://blog.vckbase.com/arong/archive/2004/06/09/409.html 在C语言中,假设我们有这样的一个函数:int function(int a,int b)调用时只要用result =function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CP转载 2009-07-28 10:34:00 · 780 阅读 · 3 评论 -
#pragma pack( n )和__declspec( align(#) ) 的偏移量计算方法
http://blog.csdn.net/DONALDO_O/archive/2008/11/15/3306588.aspx 这么复杂的东西,不用中文压根说不清楚。用英文写,写了也等写火星文。 现在的一些处理器,需要你的数据的内存地址必须是对齐(align)的,即使不是必须,如果你对齐的话,运行的速度也会得到提升。虽然对齐会产生的额外内存空间,但相对于这个速度转载 2009-07-27 15:19:00 · 1997 阅读 · 1 评论 -
C语言中offsetof宏的应用
http://blog.csdn.net/thomas_nuaa/archive/2008/12/17/3542572.aspx offsetof : Retrieves the offset of a member from the beginning of its parent structure.size_t offsetof(structName, membe转载 2009-07-30 14:52:00 · 596 阅读 · 0 评论 -
利用移位和加减法实现乘法运算
求y*x 把x化成2的指数和,即x=2^c1+2^c2+...+2^cn, 则y*x = (y转载 2009-08-05 10:55:00 · 2661 阅读 · 0 评论 -
c语言中浮点数的表示形式
http://blog.csdn.net/sun_kang/archive/2006/09/30/1310639.aspx http://blog.csdn.net/mifeixq/archive/2008/09/16/2936786.aspx转载 2009-08-12 12:37:00 · 1895 阅读 · 0 评论 -
_("")是get text 相当于gettext("")
http://topic.csdn.net/u/20090817/13/3615073f-9f7a-4e68-bed7-f7efca2219e9.html?61066 gettext("abcd"); 这个函数专门用来做软件本地化的。 它能够在运行时给你的程序找相依的翻译后的字符串。 如代码中有: printf(gettext("How are you转载 2009-08-17 14:25:00 · 763 阅读 · 0 评论 -
##的用法
今天看到一个问题关于##的,特意记录一下 出现在宏定义之中的##,用来告诉编译器,把两个字符串系在一起 参考例子: // glue.c -- use the ## operator #include #define XNAME(n) x ## n #define PRINT_XN(n) printf("x" #n " = %d/原创 2009-08-28 14:22:00 · 22315 阅读 · 1 评论
分享