
24.04.2010, 23:39
|
|
Новичок
Регистрация: 27.09.2007
Сообщений: 22
Провел на форуме: 10910
Репутация:
0
|
|
Сообщение от gisTy
у тебя цикл работает до тех пор, пока символ не будет равен EOF. этот символ ты не передаешь, поэтому выхода из цикла нет и он постоянно считывает ввод
EOF - как я понимаю, это символ конца потока.
Например, следющая конструкция копирует поток и работает прекрасно, а с подсчетом символов - беда какая-то.
main()
{
int c;
while((c = getchar()) != EOF)
putchar(c);
}
|
|
|

24.04.2010, 19:38
|
|
Участник форума
Регистрация: 07.02.2010
Сообщений: 111
Провел на форуме: 619439
Репутация:
127
|
|
Прошу помощи.

|
|
|

24.04.2010, 19:57
|
|
Постоянный
Регистрация: 24.05.2008
Сообщений: 589
Провел на форуме: 3629857
Репутация:
504
|
|
Сообщение от b82a
Прошу помощи.
Код:
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a = 235;
cout << "AAA" << setfill('.') << setw(12) << a << endl;
return 0;
}
дальше разберешься?
|
|
|

24.04.2010, 20:04
|
|
Участник форума
Регистрация: 07.02.2010
Сообщений: 111
Провел на форуме: 619439
Репутация:
127
|
|
Не совсем понял
Почему перед Кировым есть точки, а перед Угрюмовкой нет? Мне не надо точки перед Кировым
|
|
|

24.04.2010, 20:11
|
|
Постоянный
Регистрация: 24.05.2008
Сообщений: 589
Провел на форуме: 3629857
Репутация:
504
|
|
ставь перед выводом города stefill(' ') а перед выводом населения setfill('.')
|
|
|

24.04.2010, 20:22
|
|
Участник форума
Регистрация: 07.02.2010
Сообщений: 111
Провел на форуме: 619439
Репутация:
127
|
|
Отлично, спасибо!
|
|
|

24.04.2010, 23:49
|
|
Участник форума
Регистрация: 18.07.2009
Сообщений: 272
Провел на форуме: 2083691
Репутация:
330
|
|
Судя по отладке, инкремент работает, но после завершения цикла, программа по какой-то причине не переходит на printf, а возращается опять к циклу.
Вероятно, потому что вы не вышли из цикла.
В системе UNIX и некоторых других - признаком конца строки вводят <ctrl> d, в таких системах, как например Microsoft Windows, - это <ctrl> z
|
|
|

25.04.2010, 00:12
|
|
Новичок
Регистрация: 27.09.2007
Сообщений: 22
Провел на форуме: 10910
Репутация:
0
|
|
Сообщение от Ins3t
Вероятно, потому что вы не вышли из цикла.
В системе UNIX и некоторых других - признаком конца строки вводят <ctrl> d, в таких системах, как например Microsoft Windows, - это <ctrl> z
Так и вводить:
getchar() != <ctrl> z
или как?
|
|
|

25.04.2010, 00:57
|
|
Участник форума
Регистрация: 18.07.2009
Сообщений: 272
Провел на форуме: 2083691
Репутация:
330
|
|
Нажимать на клаве ctrl и z, затем ентер.
|
|
|

25.04.2010, 12:11
|
|
Новичок
Регистрация: 27.09.2007
Сообщений: 22
Провел на форуме: 10910
Репутация:
0
|
|
Сообщение от Ins3t
Нажимать на клаве ctrl и z, затем ентер.
Нажимаю CTRL+Z, появляется "^Z", но цикл все равно не завершается
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|