회문,N-gram 관련 질문입니다.
, Seo Jiwon님이 작성회문과 N-gram을 공부하면서 궁금한점이 생겼습니다.
char *a=malloc(sizeof(char)*30) ;
memset(a,0,sizeof(char)*30); 이렇게 초기화 하는것이랑
char *a[30]={NULL,} 혹은 {0,} 의 차이점이 궁금합니다.
어떤문제는 아래와 같이 사용하면 문제가 해결되는데 위와 같이 작성을 하면 오류가 생깁니다.
회신: 회문,N-gram 관련 질문입니다.
, 도장_ 관리자님이 작성-. malloc은 동적 할당
예제에서는 30처럼 크기를 지정하지만, 실제로는 크기가 지정되지 않은 경우에 주로 쓰입니다.
이미지 뷰어가 이미지 파일을 보여주려면 이미지 파일 크기에 맞는 메모리 공간을 할당해야 합니다.
메모장이 텍스트 파일을 보여주려면 텍스트 파일 크기에 맞는 메모리 공간을 할당해야 합니다.
주로 이와 같은 처리에 malloc이 쓰입니다.
-. 배열은 고정 할당
배열은 컴파일 시에 크기가 정해집니다. 크기가 고정되면 바꿀 수 없습니다.
심사 문제에서 부분 완성형의 경우 포인터로 접근하는 코드와 배열로 접근하는 코드가 있고, 그에 맞는 코드 작성을 요구합니다.