함수 반환 유형 및 포인터에 문제가 있습니다 (미안하지만 바보 같은 질문이지만 오랫동안 C를 프로그래밍하지 않았습니다). 내가 이것을 실행하는 경우 :함수 반환 유형 및 포인터
writer.c: In function ‘parse’: writer.c:6: warning: return from incompatible pointer type
writer.c:6: warning: function returns address of local variable writer.c: In function ‘main’:
writer.c:11: warning: initialization makes integer from pointer without a cast
어떤 아이디어 :
#include <stdio.h>
#include <string.h>
#include <strings.h>
char *parse(char const *data) {
return data;
}
int main(int argc, const char *argv[]) {
char *a = "# Test";
char newString = parse(a);
printf("%s\n", &newString);
return 0;
}
는 오류가 발생합니다?
감사 : 당신이 상수 문자열에 문자 포인터를 사용할 때, 그것은 const를 만들! 하지만 여전히 오류가 발생합니다 :'writer.c : In function 'parse': writer.c : 6 : 경고 : 포인터 대상 유형에서 한정자를 버리십시오. ' – errorhandler
편집을 참조하십시오. 나는 당신이 도움이된다는 것을 알게 될 것입니다. 또한 경고는 오류가 아니지만, 당신이 그것을 다음과 같이 다루는 것이 좋습니다. :) – MByD
감사합니다. 나는 어떤 경고도 갖고 싶지 않습니다. – errorhandler