2016-08-27 14 views
0

getchar(); 줄을 내게 경고 :이 코드는 효과가 없습니다.경고 :이 코드는 아무 의미가 없습니다.

#include <stdio.h> 

int main() 
{ 
    int this_is_a_number; 

    printf("Please enter a number: "); 
    scanf("%d", &this_is_a_number); 
    printf("You entered %d", this_is_a_number); 
    getchar(); 
    return 0; 
} 

어떤 해결책이 있습니까?

+1

어떤 컴파일러를 사용하고 있습니까? 그리고 사용했던 명령 줄은 무엇입니까? – user3386109

+0

'int getchar (void);'가 프로토 타입임을 명심하십시오. 컴파일러가 반환 값을 포착하지 않으므로 경고 메시지가 표시 될 수 있지만 그 오류는 해결할 수 있습니다. – sjsam

+0

난 터보 C++ –

답변

2

getchar()은 키보드에서 키를 읽고 키를 반환합니다. 당신은 변수에 함수에서 반환 값을 지정해야합니다 :

int key; 
key = getchar(); 

경고는 당신이했던 식으로 호출 할 때 어떤 변수가 변경되지 않습니다 있음을 말하고있다. 확실히 코드는 약간의 효과가 있습니다. 키보드에서 읽지 만 그게 전부입니다.

나는 오래 전 터보 C/C++을 가르쳤으므로 그것에 대해 전혀 신경 쓰지 않을 것이다. 그 날의 놀라운 제품이었습니다.