2014-12-03 2 views
1

저는 (수년 후) 매우 익숙합니다. 나는 lcc64을 사용하고 내가 오류를피연산자 중 =은 (는) 잘못된 형식을 가지고 있습니다.

"operands of = have illegal types 'pointer to char' and 'int" 

어떤 제안을받을 이유가 전혀 모르겠 다음 문

char *logMessage = strdup(argv[1]); 

이 무엇입니까?

+2

을 반환 생각? – zch

+1

'strdup'는 비표준 확장자입니다. 당신은'#include '*과 *가 있어야하고'strdup'가 보이도록해야합니다. gcc의 경우,'-std = cNN'을 사용하지 않고 * Cn의 버전을 지정하기 위해'NN '이''90'','99'' 또는''11'을 사용하여 후자를 * 할 수 있습니다. –

+0

strdup()은 C 언어의 시작 날짜로 거슬러 올라갑니다. 모든 C 라이브러리에는 C 언어가 있습니다. 이는 조직이 비준 한 것만큼이나 표준이됩니다. – Andras

답변

1

당신은 숯불 *를 반환으로()에서는 StrDup를 선언 <string.h>을 포함해야, 다른 컴파일러는 당신이`#INCLUDE `이 있는가하는 int

+0

oops, 무슨 zch했다 – Andras

+1

자신을'strdup을 선언하지 마십시오. –

+0

oops, 나는 거기에''을 가지고 있지만 태그와 너무 흡사 해 마크 다운이 그것을 삼켰다. – Andras

관련 문제