"new_str = combine_string (newstr,"test ");"줄에 컴파일 오류가 나타납니다. 오류 :호환되지 않는 포인터 유형에서 combine_string의 arg 1 전달
new_str = combine_string(new_str, "test");
: 호환되지 않는 포인터 타입
char * combine_string(char *, char *);
....
char *new_str;
new_str = newstr(item, strlen(item));
new_str = combine_string(newstr, "test");
...
char * combine_string(char *name, char *name2)
{
char *retval;
retval = erealloc(retval, (strlen(name) + strlen(name2) + 1));
if (retval != NULL)
sprintf(retval, "%s%s", name, name2);
else
free(name); //Wouldn't use it any longer
return retval;
}
...
char *newstr(char *s, int l) {
char *rv = emalloc(l + 1);
rv[l] = '\0';
strncpy(rv, s, l);
return rv;
}
new_str 및 newstr 것 같은
newstr()
에 적절한 매개 변수를 전달해야합니다 같은 게 아니야 –아. 나는 변수와 함수 이름 모두에 같은 이름을 사용했다. 그리고 그것을 변경할 때 "_"를 하나의 자리에 추가하는 것을 잊었다. – user994165