char *を取得するために次のコードを作成しましたが、このコードを実行した後、finalResultのサイズが予想よりも大きくなり、一部のガベージ文字が含まれています。なぜ??どうすれば解決できますか?
//returns void
void processChar(){
//.... more stuff here
// init is a previous char*
char* end = strstr(init,"</div>");
if(end != NULL){
long length = strlen(init) - strlen(end);
if (length > 0){
char* finalResult = malloc(length);
strncat(finalResult, init,length);
//these lengths are different,being strlen(finalResult) > length
NSLog(@"%d %d",strlen(finalResult),length);
//... more stuff here
}
}
return;
}