나는 다음과 같은 코드가 있습니다. 표준 "캐스팅없이 int에서 포인터를 만듭니다"라는 경고가 나타납니다. 다음과 같이 컴파일 할 수있게하려고합니다 :long 함수 포인터를 전송 하시겠습니까?</p> <pre><code>long fp = ... void (*ptr)(long, char*, char*) = fp; </code></pre> <p>긴 <code>fp</code> 긴로 제공되는 정확한 함수 포인터입니다 :
-std=iso9899:1990 -pedantic-errors
이 경고 메시지가 오류로 바뀝니다. 문제는 올바른 캐스트가 무엇입니까? 다양한 추측을 시도했습니다. 예 :
void (*ptr)(long, char*, char*) = (void)(*)(long, char*, char*) fp;
하지만 올바른 것을 찾을 수 없습니다.
왜이 작업을 수행 하시겠습니까? –
왜 내가 무엇을하고 싶습니까? – gubby
정수와 함수 포인터 사이에 캐스트 할 수 있습니까? –