Próbuje przestawić się z Delphi na C i brakuje mi dość mocno takiej "bezstresowej" obsługi stringów jaką ma Object Pascal :) . Czy jest w C jakaś funkcja która potrafi wczytać z wejścia dowolną ilość znaków alokując przy okazji dla nich pamięć ? W BCB wykombinowałem takiego dziwoląga:
char* str_scanf(){
int n = 0;
char c = 0;
char *str = (char *) malloc(sizeof(char));
while (c != 13){
str = (char *) realloc(str, n + 1);
c = getch();
printf("%c", c);
str[n++] = c;
}
str[n] = 0;
printf("\n");
return str;
}
Problem polega na tym, że musze działać na gcc w linuxie gdzie getch() nie ma. Może da się to zrobić inaczej ?