电脑64位linux系统,代码假设定义一个宏#define FUN(x) fun(x, sizeof(x)),代码中传入一个int型调用这个宏,进入fun函数显示sizeof(x)这个值传入的是8,但是如果我直接调fun这个函数,显示传入的值为4。这里应该都是预编译阶段就确定的值为什么有这个差别?
相关问题
- Multiple sockets for clients to connect to
- Is shmid returned by shmget() unique across proces
- What is the best way to do a search in a large fil
- glDrawElements only draws half a quad
- how to get running process information in java?
http://en.cppreference.com/w/cpp/language/types int的长度一般都是4个字节
std::cout<< "size of int: " << sizeof (int) << std::endl;
你这个问题好宏应该关系不大