![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
e28sean
这个作者很懒,什么都没留下…
展开
-
检测本机字节序的c代码
bool isLittleEndian(){ unsigned short i = 1; return *((char *)(&i)) ? true:false;}原创 2010-05-25 11:59:00 · 765 阅读 · 0 评论 -
关于 extern "C"
当这个世界还只有C的时候,是不需要extern "C"的。但是,当C++出现之后,有时候,我们就需要extern "C"了。那究竟是在什么样的情况下,我们需要用extern "C"呢?有人说,是为了C能够调用C++,有人说是为了在C++中能调用C的库函数。是不是把你弄糊涂了? 先说说extern "C"是啥作用吧。extern "C" 是告诉C++编译器,这个函数是完全兼容原创 2010-05-25 16:21:00 · 465 阅读 · 0 评论 -
C语言宏中#和##的作用
在c语言的宏中 1. #的作用是将宏参数字符串化,用例子说明比较直观。例如下面的宏定义#define STR( s ) #s 那么在程序中printf("The string is %s/n", STR(OPEN) );会被展开成printf("The string is %s/n", "OPEN" ); 也就是说,会对#后跟的参数加引号,使其变成一个字原创 2010-05-26 10:42:00 · 1239 阅读 · 1 评论 -
求32位数中有几位非0位及最低非0位和最高非0位的方法
摘自http://www.xqbase.com/computer/struct_intro.htm(1) 求一个32位数中有几位非零位的运算——Count32操作: int Count32(unsigned long Arg) { Arg = ((Arg >> 1) & 0x55555555) + (Arg & 0x55555555); Arg = ((Arg >> 2转载 2013-02-20 15:02:19 · 2291 阅读 · 0 评论