Я читаю язык программирования C и все понял до сих пор. Однако, когда я столкнулся с getchar() и putchar() , я не понял, что их использует, и, более конкретно, что делает следующий код. main() { int c; while ((c = getchar()) != EOF) putchar(c); } Я понимаю функцию main() , объявление целого c и цикла […]
Из нижеуказанных трех функций: getc getchar & scanf который является лучшим для чтения персонажа из stdin и почему? Существуют ли какие-либо известные недостатки или ограничения для любой из этих функций, что делает их лучше других?
Мне сложно понять getchar() . В следующей программе getchar работает как ожидалось: #include int main() { printf(“Type Enter to continue…”); getchar(); return 0; } Однако в следующей программе getchar не создает задержку, и программа заканчивается: #include int main() { char command[100]; scanf(“%s”, command ); printf(“Type Enter to continue…”); getchar(); return 0; } У меня есть […]
хорошо, поэтому я читаю эту книгу: язык программирования C – Кернигану и Ричи (второе издание), и один из примеров им трудно понять, как все работает. #include #define MAXLINE 1000 int getline(char line[], int maxline); void copy(char to[], char from[]); int main(int argc, char *argv[]) { int len; int max; char line[MAXLINE]; char longest[MAXLINE]; max = […]
У меня есть сомнения относительно использования getchar() для чтения ввода символов пользователем. char char1, char2; char1 = getchar(); char2 = getchar(); Мне нужно получить 2 символа в качестве вклада от пользователя. В этом случае, если пользователь вводит символ ‘A’ за которым следует char2 , а затем символ ‘B’ , что будет храниться в char2 – […]
Мое основное намерение состояло в том, чтобы вернуть getchar как только он получит символ вместо ожидания клавиши ENTER . Я попробовал это int main() { setvbuf(stdin,NULL,_IONBF,0); getchar(); return 0; } Сравнивая это с прототипом setvbuf setvbuf ( FILE * stream, char * buffer, int mode, size_t size ); он должен установить stdin в небуферизованный режим. […]
В настоящее время я читаю книгу K & R и печатаю в примерах из первого раздела, и есть несколько примеров, таких как: while((c = getchar()) != EOF) { //do something } Я тестирую эти примеры в окне Windows и, таким образом, запускаю скомпилированные exe-файлы из cmd строки cmd . Чтобы проверить пример выше, как я […]
Я изучаю C, и я использую «getchar ()», чтобы остановить командные windows, чтобы я мог видеть упражнения, которые делают, но он просто не работает. heres образец: #include int main() { int value; printf(“1. option 1.\n2. option 2.\n3. option 3.\n4. Exit\n\nMake an option: “); scanf(“%d”, &value); switch (value) { case 1: printf(“you selected the option 1.”); […]
Это вопрос «новато» для языка программирования C: В следующем коде: #include int main(void) { int c; while ((c=getchar())!= EOF) putchar(c); return 0; } Я должен нажать Enter, чтобы напечатать все буквы, которые я ввел с помощью getchar , но я не хочу этого делать, я хочу нажать букву и сразу увидеть букву, которую я вводил, […]