powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите новичку в этом деле Borland C++ Rulez
13 сообщений из 13, страница 1 из 1
Помогите новичку в этом деле Borland C++ Rulez
    #34122141
tehnix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ подскажите пожалуйста, не могу понять почему она не работает. Помоему не работает клавиша "ESC", при ее нажатии должен вывестись результат. А она Циклится на вот этом моменте и все!

printf("enter your characters; the ESC should be entered last ");
i=0;
while ((c=getchar())!=eof)
{
CountSimb(c,a,s);
i++;
}

А сама программа ниже

//Программа подсчет символов

#include <stdio.h>
#include <conio.h>

#define eof 27
#define m 5

CountSimb(char c, int v[], char s[])
{
int i;
switch(c)
{
case 'a':
v[0]++;
s[0]=c;
break;
case 'b':
v[1]++;
s[1]=c;
break;
case 'c':
v[2]++;
s[2]=c;
break;
case 'd':
v[3]++;
s[3]=c;
break;
default: //все прочие символы
v[4]++;
s[4]='!';
break;
}
}
main()
{
int c,i,a[m];
char s[m];
for (i=0; i<m; i++)
a =0;
printf("enter your characters; the ESC should be entered last ");
i=0;
while ((c=getchar())!=eof)
{
CountSimb(c,a,s);
i++;
}
for (i=0; i<m; i++)
printf("Key=%c count =%d\n",s,a);
getch();
}
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122153
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BC аццтой

аффтопитезь
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122159
tehnix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А что лучше?
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122161
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tehnixА что лучше?

хароший вапрос

но явно БЦ хуже ВСВСи
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122162
SnowMan2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В таком случае может помочь отладчик. Надо поставить точку прерывания на цикл while, запустить программу и посмотреть, чему равно с при нажатии ESC.
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122165
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конец файла - вовсе не Esc, а Ctrl-Z.
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122175
tehnix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как сделать чтобы было ESC, тогда. И почему Ctrl+Break, если код клавиши ESC равен 27, что я и указал в #define eof 27 ?????
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122287
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никак. Дефайнов не надо никаких делать. Esc - это не символ, а клавиша. Не будет у тебя в консольном вводе никогда введен Esc, это не символ, это клавиша. Символа, ей соответствующего, нету. Если и есть называющийся так же символ, то это только совпадение. Операционка не будет транслировать Esc в какой-то символ.

А вот ввод Ctrl-Z операционка и библиотека CRT воспримет правильно и возвратит в getchar() результат -1, что значит "конец потока данных" и на что имеется уже в CRT соответствующий define.
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122294
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
while ( (c=getchar()) != EOF )
{
printf("The character is: '%c' %d %X\n", c, c, c );
}
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122346
tehnix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, все понятно!
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122412
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AklinBC аццтой

аффтопитезь
И чем он отстой ?
такой же С++ :)
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122721
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JibSkeart

"Вы невнимательны, воспользуйтесь поизком" (с) не помню кто.
...
Рейтинг: 0 / 0
Помогите новичку в этом деле Borland C++ Rulez
    #34122735
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aklin JibSkeart

"Вы невнимательны, воспользуйтесь поизком" (с) не помню кто.

Понил , понил ... :)
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите новичку в этом деле Borland C++ Rulez
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]