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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.89
Noa
57 / 34 / 4
Регистрация: 08.04.2008
Сообщений: 158
#1

Подсчет вводимых символов - C++

08.04.2008, 22:15. Просмотров 2464. Ответов 5
Метки нет (Все метки)

Добрый вечер. Решил изучить C. Откопал книгу Кернигана и Ричи. В ней приводится пример

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
 
/* подсчет вводимых символов; 1-я версия */ 
main()
{
    long nc;
    nc = 0;
 
    while (getchar() != EOF)
        ++nc;
    printf(%ld\n”, nc);
}
Тупой вопрос... Как мне проверить этот пример? То есть что мне надо ввести, чтобы цикл while прервался и на экран вывелось количество символов? Использую Microsof Visual С++ v. 6.0...

Да, и ще вопрос, функция getchar() должна считывать символ, так почему же она считывает целые строки? Проосто я, походу, что-то не понимаю... =(
За ранее благодарен...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.04.2008, 22:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подсчет вводимых символов (C++):

Подсчет в строке символов вводимых с клавиатуры - C++
День добрый. Стоит задача ввести с клавиатуры строку потом вводим вторую строку и сравниваем совпадение символов. пример: строка...

Проверка вводимых символов - C++
Что то я так и не нашел в с++ под линукс есть ли встроенные регэкспы. Мне нужно что бы люди при загрузке файла не могли подменить имя, то...

Проверка вводимых символов - C++
Привет форум! Уже пытался кое-что найти в книжках по С++ по поводу сабжа, но многое мне не ясно, ибо я очень очень чайник. Вот что мне...

Замена вводимых символов - C++
Как можно в с++ реализовать мгновенную замену введенных символов, скажем на &quot;*&quot;, устройство скрытия пароля. Заранее благодарен.

Подсчет символов UTF-8. Считывание пробельных символов - C++
Написал программу считывания файла с кодировкой UTF-8. Но она не считывает пробельные символы. Программа получает на вход файл из...

Ограничение длины вводимых символов - C++
Ребят помогите пожалуйста ограничить длину вводимых символов, а именно чисел через cin.getline вот код: #include &lt;iostream&gt; using...

5
Noa
57 / 34 / 4
Регистрация: 08.04.2008
Сообщений: 158
10.04.2008, 09:21  [ТС] #2
Мда, что, никто не знает?
0
master.EXE
88 / 16 / 2
Регистрация: 10.03.2008
Сообщений: 101
10.04.2008, 14:51 #3
тут такое дело...Вот ты воодишь символы, их считывает функция getchar(). Ты можешь вводить по одному символу, а можешь вводить и строку. В данном случае ты будешь ввобить символы до тех пор, пока не введешь символ Ctrl^Z (комбинация клавиш CTRL+Z). Это называется управляющая последовательность, для getchar() CTRL^Z является EOF.
А чтобы твоя прога заработала в Visual C++ 6. Нужно переписать её таким образом:
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std; 
void main()
{
long nc;
nc = 0;
while (getchar()!= EOF)
++nc;
cout<<nc<<endl;
}
Если ты хочешь сделать так, чтобы прога считывала символы до нажатия клавиши ENTER, То введи следующий код:
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std; 
void main()
{
long nc;
nc = 0;
while (getchar()!= '\n')
++nc;
cout<<nc<<endl;
}
А вообще, лучше найди книжку поновее. Книга Кернигана и Ричи конечно классика, но с момента написания этой книги много воды утекло, поменялись стандарты. И еще, если собираешься писать в Си, то лучше пользуйся компилятором от Borland, а потом когда доберешься до С++, то переходи в Visual C++.
Могу посоветовать такие книги:
  • Стивен Прата - Язык программирования С. Лекции и упражнения
  • Стивен Прата - Язык программирования С++. Лекции и упражнения
  • Бьерн Страуструп - Язык программирования С++.
  • Стивен Холзнер - Visual C++ 6. Учебный курс
0
Noa
57 / 34 / 4
Регистрация: 08.04.2008
Сообщений: 158
10.04.2008, 18:20  [ТС] #4
Спасибо, еще хочу сказать спасибо за литературу, просто ее так много, что я даже не знал, что выбрать... Я С я начал изучать только из-за того, что наткнулся на эту книгу, уж больно понравился синтаксис, да и язык книги =)
0
drummer
2 / 2 / 0
Регистрация: 13.01.2008
Сообщений: 38
10.04.2008, 21:41 #5
2master.exe
Почему он не откомпилиться? По-мойму С++ старались сделать как можно более совместимым с С.

этот код меня компилиться
C++
1
2
3
4
5
6
7
8
9
main()
{
long nc;
nc = 0;
 
while (getchar() != EOF)
++nc;
 printf("%ld\n", nc);
}
0
Noa
57 / 34 / 4
Регистрация: 08.04.2008
Сообщений: 158
10.04.2008, 22:45  [ТС] #6
Компиляторы C++ поддерживают С...
Цитата Сообщение от drummer
Почему он не откомпилиться?
Никто не говорил, что компилиться не будет...
0
10.04.2008, 22:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2008, 22:45
Привет! Вот еще темы с ответами:

Реализовать проверку на количество вводимых символов - C++
Допустим, объявлен массив чаров из 16 элементов, пользователь же ввел строку из 17 или более элементов - тогда программа зависает и...

Подсчитать числа вводимых символов используя цикл while - C++
Напишите программу подсчета числа вводимых символов, используя цикл while.

Вывести на экран код и тип вводимых символов - C++
С клавиатуры вводится произвольная последовательность символов. Для каждого символа выведите на экран следующую информацию: Код...

Как ограничить количество вводимых символов с клавиатуры? - C++
Я учусь программировать на C++ и написал свой первый калькулятор, считает он нормально и вроде бы все ок и когда вводишь неверное значение...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru