Я написал небольшой код для динамического распределения объема памяти, необходимого для хранения полного ввода, но используя кучу с malloc и realloc
Есть ли способ, которым я могу сделать это, просто используя стек для храненияполный пользовательский ввод в память?
код:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char* argv[]){
int c = 0;
int buffer_length = 2;
int buffer_pos = 0;
char *buffer = (char *)malloc(buffer_length * sizeof(char));
while(c != 10){
c = getchar();
if(buffer_pos >= buffer_length - 1){
buffer_length += 2;
buffer = realloc(buffer, buffer_length * sizeof(char));
}
buffer[buffer_pos] = c;
buffer_pos++;
}
printf("%s",buffer);
free(buffer);
main(0,NULL);
}