指针问题

时间:2010-05-06 09:19:53

标签: c++ visual-studio pointers

好的,我有一个奇怪的问题。我有这段代码:

int *p;
int test;
p=&test;

在Visual C ++ express中,在我现有的项目中,我收到了这个错误:

missing type specifier - int assumed.
'p' : 'int' differs in levels of indirection from 'char *'
'initializing' : cannot convert from 'char *' to 'int'

但是当我创建新项目时,相同的代码就可以了。问题是什么?

3 个答案:

答案 0 :(得分:2)

此代码之前的某些内容可能会破坏事物(更多上下文可能有所帮助)。也许test是一个宏,它会严重破坏你的代码的含义。

答案 1 :(得分:1)

如果不同项目中的相同代码产生不同的结果,我猜你可以假设问题不在于代码,而在于项目。

我建议你在两个项目文件之间做一个差异,快速查看可能出错的地方。

答案 2 :(得分:1)

您是否已将该代码放入函数中?你不能在函数之外编写任意C ++代码。

int main() {
    int *p;
    int test;
    p=&test;
}