일부 웹 사이트를 통해 포인터가 매달려있는 프로그램을 검색하고 발견했습니다. TC에서 완벽하게 실행되는 최고의 프로그램을 찾았습니다. 그러나 fflush (stdin)에 대한 나의 의심 때문에 프로그램의 전체적인 의미를 이해할 수는 없습니다. 그래서 의미와 다음과 같은 프로그램의 다른 절차를 알려주세요 : 인해 argument.for 예다음 프로그램에서 "fflush (stdin)"의 정확한 의미는 무엇입니까?
#include<stdio.h>
int *call(void);
int main(void) {
int *ptr;
ptr = call();
fflush(stdin);
printf("%d", *ptr);
return 0;
}
int *call(void) {
int x = 25;
++x;
return &x;
}
아니요 @Banthar. 그 질문은 구체적이지 않습니다. 하지만 내 의심은 특히 위의 프로그램에 있습니다. – kalyan
자동 변수의 주소를 반환하고 사용하기 때문에 UB이기도합니다. – Jens