const size_t sizeIncrement = 10;
char* buffer = malloc(sizseIncrement);
char* currentPosition = buffer;
size_t maximumLength = sizeIncrement;
size_t length = 0;
int character;
if(currentPosition == NULL) { return NULL; }
while(1) {
character = fgetc(stdin);
if(character == '\n') { break; }
if(++length >= maximumLength) {
char *newBuffer = realloc(buffer, maximumLength += sizeIncrement);
if(newBuffer == NULL) {
free(buffer);
return NULL;
}
currentPosition = newBuffer + (currentPosition - buffer);
buffer = newBuffer;
}
*currentPosition++ = character;
}
*currentPosition++ = '\0';
return buffer;
}
// 씨발
이 코드가 먼데 공부하고 그러냐?
한달만 공부해도 해석할꺼같은데
기본서 다 읽고 나면 이해 가능할듯!!
기본서읽고 저걸 어떻게이해하냐 병신아
코드 자체는 쉽습니다. 어려운 것 하나도 없어요.
메모리 할당/해제 랑 포인터 부분만 이해하시면 쉽게 해석 가능하십니다.