(1)
void * __cdecl malloc(size_t size)
void __cdecl free(void *ptr)
这个_cdecl是什么意思?
加了它有什么好处?
(2)
#pragma pack(push, 1)
。
。
#pragma pack(pop)
这个是什么意思?
加了它有什么好处?(3)
#ifdef __GOOD__
#endif这个GOOD好像不是当前源文件的名字,在整个源程序中也没有这个文件名。
#ifdef __GOOD__ 中,这种定义法是不是还有其它意思?
void * __cdecl malloc(size_t size)
void __cdecl free(void *ptr)
这个_cdecl是什么意思?
加了它有什么好处?
(2)
#pragma pack(push, 1)
。
。
#pragma pack(pop)
这个是什么意思?
加了它有什么好处?(3)
#ifdef __GOOD__
#endif这个GOOD好像不是当前源文件的名字,在整个源程序中也没有这个文件名。
#ifdef __GOOD__ 中,这种定义法是不是还有其它意思?
解决方案 »
- 求教!关于登录界面和数据库
- vs2008中怎么为activex添加自定义属性页?
- 请问有没有有关force feedback(力回馈)方面的资料?
- 请问javacript中字符串比较如何实现
- 如何自由的使用DDV技术(高手解决)
- ATL中能用com+技术吗?
- yhb4!!
- vc如何调用vc编写的ocx的方法??调用的时候总是出现Debug Assertion Failed错误??是不是有什么设置??
- 为什么我在局域网里能调通的程序,在Internet上就用不了呢?
- ======》 NT下共享内存的权限问题
- VisualStudio(嗷~~~) :昨天哪个问题的后续问题?
- 带CheckBox的ClistCtrl在Item被Check的时候激发的是什么消息?
(3)为了防止代码多次编译,通常的用法应该是这样的
***.h#ifndef __GOOD_
#define __GOOD_
//你的代码 AAA
#endif
这样的话万一***.h被多个cpp文件include,你的代码 AAA,就不会被多次编译,避免类似
多次定义啊等等的错误
不仅仅针对头文件,针对一些不同编译器的版本或者想跨平台的时候都会用到
struct
{
char t;
int m;
}z;
按字节来说应该是5个字节,但实际上sizeof(z)不是5,大概是8吧
因为他按照一定的规则自动补齐。pack就是定义补齐规则的