相关疑难解决方法(0)

为什么在宏中使用明显无意义的do-while和if-else语句?

在许多C/C++宏中,我看到宏的代码包含在看似无意义的do while循环中.这是一些例子.

#define FOO(X) do { f(X); g(X); } while (0)
#define FOO(X) if (1) { f(X); g(X); } else
Run Code Online (Sandbox Code Playgroud)

我看不出它do while在做什么.为什么不在没有它的情况下写这个?

#define FOO(X) f(X); g(X)
Run Code Online (Sandbox Code Playgroud)

c c++ c++-faq c-preprocessor

758
推荐指数
8
解决办法
9万
查看次数

IB在IBAction,IBOutlet等中意味着什么?

我对iPhone开发很新.我经常遇到IBAction,IBOutlet等等,在阅读Objective-C和Swift代码时.什么IB代表什么?

iphone xcode

35
推荐指数
2
解决办法
1万
查看次数

不寻常的C函数声明

我目前正在使用一个旧的C库(在90年代早期制作),以下函数声明使我感到困惑:

#define bland_dll
typedef unsigned short int usint;
typedef unsigned char uchar;

int bland_dll Read_Chan (usint channel);
Run Code Online (Sandbox Code Playgroud)

什么是bland_dll函数的名称,它的返回类型之间在做什么?

谢谢你的灯!

c declaration function

11
推荐指数
1
解决办法
156
查看次数

如果 #define 在没有任何赋值的情况下使用,它会做什么?

#define TML_ID - 没有给 TML_ID 赋值。编译或构建可执行文件没有问题。这会为 TML_ID 分配任何默认值(如 null)还是将 TML_ID 视为未定义?

c++

3
推荐指数
1
解决办法
1471
查看次数

标签 统计

c ×2

c++ ×2

c++-faq ×1

c-preprocessor ×1

declaration ×1

function ×1

iphone ×1

xcode ×1