코드비젼을 사용하고 있는데요
왜 strcpy가 에러가 나죠?
void main(void)
{ char *str="0000";
char str1[4];
strcpy(str,"1234"); //이렇게 한것도 에러가 나구요
strcpy(str1,"1234"); // 이것도 에러가 나네요..
strcpy(str,(char *)"1234"); //이렇게 하면 에러는 안나는데 복사가 안되구
}
어떻게 하면 에러가 안나지요?
모르는게 넘 많네요..
부탁 드립니다.
왜 strcpy가 에러가 나죠?
void main(void)
{ char *str="0000";
char str1[4];
strcpy(str,"1234"); //이렇게 한것도 에러가 나구요
strcpy(str1,"1234"); // 이것도 에러가 나네요..
strcpy(str,(char *)"1234"); //이렇게 하면 에러는 안나는데 복사가 안되구
}
어떻게 하면 에러가 안나지요?
모르는게 넘 많네요..
부탁 드립니다.
이런게 뜹니다.
그래서
char *str="0000";
이 부분을
char *str="00000";
이렇게도 해보고
char str[5]="00000";
이렇게도 해보고 휴우 안되네요.. ㅜㅜ
strcpy의 경우 눈에는 보이지 않지만 "..." 사이의 끝에는 항상 '\0' 가 들어 갑니다. 그래서....배열수를 [5]로 해줘야 한답니다.
str1[5]
에러도 그렇게 나오잖아요..
배열변수 이름[원하는배열+1] <== 문자형일경우에만 해당 한답니다.
오직 갈길은 열공밖에 없네요.
많은 가르침 부탁 드립니다.