W tym zapisie będziemy używać wbudowanych funkcji programowania C, które można użyć do odczytania danych wejściowych przez stdin.
Jak odczytać wiersz ze stdin w programowaniu C
Istnieją różne wbudowane funkcje używane w programowaniu C do odczytu wejść ze stdina. Funkcje używane do odczytu linii to:
Szczegółowo wyjaśnimy wszystkie te funkcje.
getline (): Ta funkcja służy do odczytu linii ze stdina. Aby zrozumieć tę funkcję, rozważmy przykład, utworzymy plik tekstowy o nazwie MyFile2.c i napisz następujący skrypt:
#włączaćSkompiluj skrypt pliku2.C Korzystanie z kompilatora GCC:
$ gcc myfile2.C -O myfile2
Uruchom kod za pomocą polecenia:
$ ./Myfile2
W powyższym wyjściu widzimy, że linia jest pobierana ze stdina, a następnie wyświetlana z liczbą jego znaków. Funkcja getline () odczytuje pełne zdanie ze stdin i przydzielają pamięć na stosie i zapisuje tam. W getline () przekazujemy adres pamięci, w którym powinna być przechowywana linia, adres długości linii i stdin. Następnie po prostu wyświetl linię i jej długość za pomocą funkcji printf (). Ponadto, ostatecznie użyliśmy free (), aby przestrzeń zajmowana w pamięci mogła zostać wyczyszczona, aby ponownie ją użyć.
getchar (): getchar () Funkcja służy do odczytu pierwszego znaku stdina, a putchar () służy do wyświetlania pojedynczego znaku na ekranie. Wadą getchar () i putchar () jest to, że potrafią odczytać i wyświetlać tylko jeden znak na raz, ale możemy użyć pętli do wyświetlania wszystkich znaków stdina. Aby to zrozumieć, napisz następujący kod:
#włączaćSkompiluj kod za pomocą kompilatora GCC:
$ gcc myfile4.C -O myfile4
Wykonaj myfile4:
$ ./Myfile4
W powyższym kodzie wprowadzamy wiersz „Hello! To jest Linuxhint ”, a getchar () odczytuje pierwszy znak linii, a putchar () służy do wyświetlania linii. Najpierw zapytaliśmy użytkownika o długość łańcucha, a następnie wyświetliśmy go za pomocą pętli.
scanf (): Inną szeroko stosowaną metodą odczytu linii ze stdina jest używa funkcji „scanf ()”. Scanf przyjmuje dane wejściowe ze stdina, a następnie skanuje go i zapisuje w jakiejś zmiennej lub tablicy. Na przykład:
#włączaćKorzystając z kompilatora GCC, skompiluj program MyFile5.C do debugowania błędów:
$ gcc myfile5.C -O myfile5
Wykonaj myfile5:
$ ./Myfile5
W powyższym skrypcie po prostu zadeklarowaliśmy tablicę „a” za pomocą typu danych znaków, z pomocą Scanf () wzięliśmy wkład ze stdina. Wykorzystaliśmy stałą „%s”, która służy również do czytania i drukowania strun. Następnie wyświetlił ciąg przechowywany w tablicy A [], czyli „Hello”.
Wniosek
Stdin służy do przyjmowania danych wejściowych z klawiatury i może czytać na różne sposoby. Istnieją różne funkcje używane do odczytu stdina. W tym zapisie użyliśmy różnych funkcji używanych do odczytania wiersza. Wbudowana funkcja w programowaniu C to getline (), która jest używana do odczytu linii ze stdin. Ale możemy również używać innych funkcji, takich jak getchar () i scanf () do odczytu linii.