char*
을 char*
에 할당하려면 strcpy
을 사용하면 몇 가지 런타임 메모리 문제가 발생하므로 = operator
을 사용하여 간단한 과제로 해결할 수 있습니다. 아무도 메모리 문제를 피하기 위해 strcpy
을 사용하기 전에 준비해야 할 사항을 설명 할 수 있습니까?strcpy를 안전하게 사용하는 방법
편집 :
int Function(const char* K,char* FileIN,char* FileOut,int DC)
{
char *fic_in,*n_fic,*fic_out,*fic_dec;
unsigned char k[17];
fic_in = (char*)malloc(60*sizeof(char));
strcpy((char*)k,K);
//strcpy(fic_in,FileIN); //I remove this one
fic_in=FileIN; //and replace it by this
...
http://stackoverflow.com/questions/1258550/why-should-you-use-strncpy-instead-of-strcpy –
대상 char *에 미리 필요한 공간을 예약 하시겠습니까? 참조로 변환 (http://www.cplusplus.com/reference/clibrary/cstring/strcpy/) : "오버플로를 방지하려면 대상이 가리키는 배열의 크기가 원본과 동일한 C 문자열을 포함 할만큼 충분히 길어야합니다 (종료 널 문자 포함), 소스와 메모리에서 겹쳐서는 안됩니다. " – dunadar
기술적 인 어려움으로 인해 일시적으로 마음을 읽을 수 없습니다. 코드를 보여주세요. – Rost