Форум программистов, компьютерный форум CyberForum.ru

Почему функция putchar(); выводит только первый символ?(Короткий код) - C++

Восстановить пароль Регистрация
 
 
Aqua77
4 / 4 / 1
Регистрация: 13.07.2015
Сообщений: 315
01.08.2015, 20:12     Почему функция putchar(); выводит только первый символ?(Короткий код) #1
C++
1
2
3
4
5
6
7
8
9
#include <stdio.h>
#include <conio.h>
int main()
{
  int c;
  c=getchar();
  putchar(c);
  getch();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4846 / 2985 / 368
Регистрация: 10.11.2010
Сообщений: 11,026
Записей в блоге: 10
Завершенные тесты: 1
01.08.2015, 20:17     Почему функция putchar(); выводит только первый символ?(Короткий код) #2
Потому что функция putchar предназначена для вывода только одного символа.
char - сокращение от character - символ.
Aqua77
4 / 4 / 1
Регистрация: 13.07.2015
Сообщений: 315
01.08.2015, 20:29  [ТС]     Почему функция putchar(); выводит только первый символ?(Короткий код) #3
Но ведь в цикле получается
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <conio.h>
#define eof 71
int main()
{
  int c;
  c=getchar();
  while(c!=eof)
  {
      c=getchar();
      putchar(c);
  }
  getch();
}
castaway
Эксперт С++
4846 / 2985 / 368
Регистрация: 10.11.2010
Сообщений: 11,026
Записей в блоге: 10
Завершенные тесты: 1
01.08.2015, 20:33     Почему функция putchar(); выводит только первый символ?(Короткий код) #4
Что в цикле получается?
Aqua77
4 / 4 / 1
Регистрация: 13.07.2015
Сообщений: 315
01.08.2015, 20:36  [ТС]     Почему функция putchar(); выводит только первый символ?(Короткий код) #5
В цикле получается putchar вывести все символы, не только один
castaway
Эксперт С++
4846 / 2985 / 368
Регистрация: 10.11.2010
Сообщений: 11,026
Записей в блоге: 10
Завершенные тесты: 1
01.08.2015, 20:43     Почему функция putchar(); выводит только первый символ?(Короткий код) #6
Цитата Сообщение от Aqua77 Посмотреть сообщение
В цикле получается putchar вывести все символы, не только один
Это поразительно логично.
Объясни задачу.
Aqua77
4 / 4 / 1
Регистрация: 13.07.2015
Сообщений: 315
01.08.2015, 20:47  [ТС]     Почему функция putchar(); выводит только первый символ?(Короткий код) #7
Я просто хочу знать почему putchar в цикле выводит все символы. Ведь putchar предназначен для вывода только одного символа.
castaway
Эксперт С++
4846 / 2985 / 368
Регистрация: 10.11.2010
Сообщений: 11,026
Записей в блоге: 10
Завершенные тесты: 1
01.08.2015, 20:55     Почему функция putchar(); выводит только первый символ?(Короткий код) #8
Цитата Сообщение от Aqua77 Посмотреть сообщение
Я просто хочу знать почему putchar в цикле выводит все символы. Ведь putchar предназначен для вывода только одного символа.
Вот теперь всё стало понятно. Мне необходимо подумать...
kuza84
-4 / 23 / 4
Регистрация: 25.04.2013
Сообщений: 195
01.08.2015, 21:03     Почему функция putchar(); выводит только первый символ?(Короткий код) #9
Цитата Сообщение от Aqua77 Посмотреть сообщение
Я просто хочу знать почему putchar в цикле выводит все символы. Ведь putchar предназначен для вывода только одного символа.
может putchar выводит по одному символу в одну итерацию.
zss
Модератор
Эксперт С++
 Аватар для zss
5947 / 5552 / 1784
Регистрация: 18.12.2011
Сообщений: 14,184
Завершенные тесты: 1
01.08.2015, 21:27     Почему функция putchar(); выводит только первый символ?(Короткий код) #10
getchar и putchar реализуют буферизованный ввод-вывод.
Пока не нажмете enter символы копятся в буфере, а потом уж выводятся.
Поэтому и создается ощущение, что все сразу.

C++
1
2
3
4
5
6
c=getche();
  while(c!='\n')
  {
      putch(c);
      c=getche();
  }
Aqua77
4 / 4 / 1
Регистрация: 13.07.2015
Сообщений: 315
01.08.2015, 22:02  [ТС]     Почему функция putchar(); выводит только первый символ?(Короткий код) #11
А почему без цикла выводится только один символ?
castaway
Эксперт С++
4846 / 2985 / 368
Регистрация: 10.11.2010
Сообщений: 11,026
Записей в блоге: 10
Завершенные тесты: 1
01.08.2015, 22:06     Почему функция putchar(); выводит только первый символ?(Короткий код) #12
Aqua77, а почему бы вам не описать задачу/проблему?
Aqua77
4 / 4 / 1
Регистрация: 13.07.2015
Сообщений: 315
01.08.2015, 22:08  [ТС]     Почему функция putchar(); выводит только первый символ?(Короткий код) #13
Моя задача узнать. Почему putchar в цикле выводит все символы. Ведь putchar предназначен для вывода только одного символа.
castaway
Эксперт С++
4846 / 2985 / 368
Регистрация: 10.11.2010
Сообщений: 11,026
Записей в блоге: 10
Завершенные тесты: 1
01.08.2015, 22:11     Почему функция putchar(); выводит только первый символ?(Короткий код) #14
Aqua77, почему ты такая/такой тупая/тупой?
tnk500
113 / 117 / 25
Регистрация: 25.08.2012
Сообщений: 1,214
Завершенные тесты: 3
01.08.2015, 22:11     Почему функция putchar(); выводит только первый символ?(Короткий код) #15
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Aqua77, на условие посмотрите в цикле. 'Пока символ, вычитанный в стандартном потоке входа (stdin, как он официально зовется) не равен нулю, делать цикл'. А в цикле читается слелующий символ. Когда вы пишите строку и жмете Enter, во входной поток записывается ваша строка с нулем в конце. В итоге каждая итерация цикла читает эту строку по одному символу и кладет его в стандартный выходной поток (stdout).
Aqua77
4 / 4 / 1
Регистрация: 13.07.2015
Сообщений: 315
01.08.2015, 22:20  [ТС]     Почему функция putchar(); выводит только первый символ?(Короткий код) #16
Я задаю опрос чтобы не быть тупым. Ты не можешь ответить на вопрос, ты тоже тупой . Зачем тогда вообще пишешь сюда?
castaway
Эксперт С++
4846 / 2985 / 368
Регистрация: 10.11.2010
Сообщений: 11,026
Записей в блоге: 10
Завершенные тесты: 1
01.08.2015, 22:26     Почему функция putchar(); выводит только первый символ?(Короткий код) #17
Цитата Сообщение от Aqua77 Посмотреть сообщение
Ты не можешь ответить на вопрос, ты тоже тупой .
Все это и так знают.
Цитата Сообщение от Aqua77 Посмотреть сообщение
Я задаю опрос чтобы не быть тупым.
Задавай вопрос правильно, тупым не будешь.
Aqua77
4 / 4 / 1
Регистрация: 13.07.2015
Сообщений: 315
01.08.2015, 22:31  [ТС]     Почему функция putchar(); выводит только первый символ?(Короткий код) #18
Что непонятного в вопросе "Почему putchar в цикле выводит все символы. Ведь putchar предназначен для вывода только одного символа." ?
kuza84
-4 / 23 / 4
Регистрация: 25.04.2013
Сообщений: 195
01.08.2015, 22:36     Почему функция putchar(); выводит только первый символ?(Короткий код) #19
Цитата Сообщение от Aqua77 Посмотреть сообщение
Ты не можешь ответить на вопрос,
дело в том что, ваша подача темы не вызывает вопроса.

Если вы умеете читать код и знаете как работает данная функция то у вас вопрос не возникнет, но если вы сомневаетесь посмотрите в литературе описание работы этой функции.

Добавлено через 2 минуты
Цитата Сообщение от Aqua77 Посмотреть сообщение
"Почему putchar в цикле выводит все символы. Ведь putchar предназначен для вывода только одного символа." ?
У вас вопросов по циклу нет случайно? А то можете задать.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.08.2015, 22:37     Почему функция putchar(); выводит только первый символ?(Короткий код)
Еще ссылки по теме:

Выводится в файл только первый символ строки, остальные пустые C++
Вывод переменных типа char: правильно выводится только первый символ C++
Выводится только первый символ строки C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
castaway
Эксперт С++
4846 / 2985 / 368
Регистрация: 10.11.2010
Сообщений: 11,026
Записей в блоге: 10
Завершенные тесты: 1
01.08.2015, 22:37     Почему функция putchar(); выводит только первый символ?(Короткий код) #20
Цитата Сообщение от Aqua77 Посмотреть сообщение
Что непонятного в вопросе
А что непонятного в ответе:
Цитата Сообщение от castaway Посмотреть сообщение
Потому что функция putchar предназначена для вывода только одного символа.
+ 1
+ 2
Yandex
Объявления
01.08.2015, 22:37     Почему функция putchar(); выводит только первый символ?(Короткий код)
Ответ Создать тему
Опции темы

Текущее время: 05:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru