2010-05-06 6 views
0

그래, 이상한 문제가있어. 나는이 코드 조각이 :포인터가있는 문제

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

비주얼 C에서 내 exsisting 프로젝트에 표현 ++를,이 오류가 얻을 :

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

를하지만 새 프로젝트를 만들 때 같은 코드는 괜찮습니다. 뭐가 문제 야?

+7

오류는 여기에 제시된 코드와 아무런 관련이 없습니다. – AraK

+2

실제 컴파일 가능한 코드 표시 - 프로젝트의 다른 부분에 문제가 발생했을 가능성이 있음 – Mark

+2

코드 조각이 불완전합니다. 더 많은 컨텍스트를 얻기 위해 전체 프로그램을 사용할 수 있습니까? –

답변

1

다른 프로젝트의 동일한 코드가 다른 결과를 생성하면 프로젝트에 문제가 있다고 생각할 수 있습니다.

두 프로젝트 파일간에 diff를 작성하여 잘못되었을 수있는 사항을 간략히 살펴 보시기 바랍니다.

1

코드를 함수 안에 넣었습니까? 함수 밖에서는 임의의 C++ 코드를 작성할 수 없습니다.

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

이 코드 앞에 나오는 내용이 문제가 될 수 있습니다 (배경이 더 도움이 될 수 있음). 아마도 test은 코드의 의미를 혼란스럽게 만드는 매크로입니다.

관련 문제