Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.87/140: Рейтинг темы: голосов - 140, средняя оценка - 4.87
2 / 2 / 1
Регистрация: 01.05.2013
Сообщений: 109

Подскажите аски код клавиши ENTER

25.05.2013, 07:54. Показов 31082. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хотел написать программу, которая вводит строки из файла и выводит их потом построчно, но для вывода каждой новой строки нужно нажать клавишу enter. Подскажите аски код клавиши ENTER или подскажи как можно изменить программу, вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
int main()
{
   ifstream cin("input.txt");
   //ofstream cout("output.txt");
   vector<string> v;
   string str,str1;
   char enter;
   long long int a=0,b,perem=1,ans=0,i;
   while(getline(cin,str))
   {
       v.push_back(str);
   }
   for(i=0;i<=v.size()-1;i++)
   {
       cout<<v[i]<<endl;
       l:cout<<"'Enter' for continue\n";
       scanf("%c",&enter);
       if(enter=='\n')
       {
       }
       else
       {
           goto l;
       }
   }
   //cout<<str1;
    return 0;
}
P.S. Заранее спаибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.05.2013, 07:54
Ответы с готовыми решениями:

прога, которая по нажатой клавише выводит ascii - код символа это клавиши или scan - код самой клавиши.
написать программу, которая по нажатой клавише выводит ascii - код символа этой клавиши или scan - код самой клавиши. осуществите вывод в...

подскажите аски код
подскажите аски код перехода на новую строчку.

Код клавиши <Enter> не отрабатывает
Вот в таком коде клавиша &lt;Tab&gt; отрабатывает нормально, а &lt;Enter&gt; - нет: Private Sub Text1_KeyPress(KeyAscii As Integer) ... If...

26
 Аватар для nullpointer
48 / 48 / 14
Регистрация: 30.03.2009
Сообщений: 523
25.05.2013, 11:05
Enter - 13
0
2 / 2 / 1
Регистрация: 01.05.2013
Сообщений: 109
25.05.2013, 14:40  [ТС]
Подскажите теперь пожалуйста как это можно реализовать, а то, что-то у меня не выходит. Не работает считывание клавиши "ENTER".
0
 Аватар для pizurok
77 / 69 / 20
Регистрация: 05.05.2013
Сообщений: 3,810
25.05.2013, 14:48
C++
1
2
enter = getchar();
if (enter == 13) ...
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38203 / 21135 / 4310
Регистрация: 12.02.2012
Сообщений: 34,741
Записей в блоге: 14
25.05.2013, 14:49
Попробуй вместо scanf:

C++
1
system("pause");
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
25.05.2013, 14:51
Цитата Сообщение от NaikoN Посмотреть сообщение
Не работает считывание клавиши "ENTER".
scanf возвращает управление после нажатия Enter
0
 Аватар для pizurok
77 / 69 / 20
Регистрация: 05.05.2013
Сообщений: 3,810
25.05.2013, 14:52
Цитата Сообщение от Catstail Посмотреть сообщение
Попробуй вместо scanf:

C++
1
system("pause");
Эпик фейл, он должен считать символ, и проверить, а не постоянно делать задержку...
0
2 / 2 / 1
Регистрация: 01.05.2013
Сообщений: 109
25.05.2013, 14:56  [ТС]
Croessmah, А, что тогда нужно использовать вместо scanf() ????
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
25.05.2013, 14:58
Цитата Сообщение от NaikoN Посмотреть сообщение
А, что тогда нужно использовать вместо scanf() ????
ну если под Windows(DOS) тогда можно _getch()
0
 Аватар для pizurok
77 / 69 / 20
Регистрация: 05.05.2013
Сообщений: 3,810
25.05.2013, 15:01
я же отписал вам вариант с getchar(), аналогично можно юзать getch()
0
2 / 2 / 1
Регистрация: 01.05.2013
Сообщений: 109
25.05.2013, 15:01  [ТС]
А точно код клавиши enter равен 13???? не 10????
0
 Аватар для pizurok
77 / 69 / 20
Регистрация: 05.05.2013
Сообщений: 3,810
25.05.2013, 15:03
Цитата Сообщение от NaikoN Посмотреть сообщение
А точно код клавиши enter равен 13???? не 10????
Лучше просто ввести гетчаром, проверить на \n:
C++
1
2
enter = getchar();
if (enter == '\n') ...
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
25.05.2013, 15:04
NaikoN, Enter это виртуальная клавиша результат её нажатия да проявляется в том что в буффере остаётся '\n' ASCI код которого известен. Посмотри как профессионально парсить стрелки, клавиши F, Shift, Ctrl, Esc, Enter и т.д. Стрелки клавиатуры в консоли Виртуальный код клавиши есть в Winbase.h VK_RETURN.

Не по теме:

Цитата Сообщение от NaikoN Посмотреть сообщение
vector<string> v;
- использовать STL и при этом юзать scanf/getch - это всё равно как смотреть 3D на чёрнобелом ламповом телевизоре...

0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
25.05.2013, 15:04
Цитата Сообщение от NaikoN Посмотреть сообщение
А точно код клавиши enter равен 13???? не 10????
C++
1
2
3
4
5
6
#include <iostream>
#include <conio.h>
int main(){
    char ch=_getch();
    std::cout<<"Key ["<<(unsigned int)ch<<"]"<<std::endl;
}
0
2 / 2 / 1
Регистрация: 01.05.2013
Сообщений: 109
25.05.2013, 15:14  [ТС]
pizurok, Я попробовал с getchar() он не верно работает, т. е. сначало он считывает код введеной клавиши и следом клавиши enter и получается сначала вывод Wrong и следом следующую строку
P.S. Может я не верно его использовал, но с _getch() все работает на "УРА".

Добавлено через 1 минуту
-=ЮрА=-, Ну простите, я еше не шибко грамотный

Добавлено через 29 секунд
В конечном итоге у меня получилось так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include<iostream>
#include<fstream>
#include<vector>
#include<conio.h>
using namespace std;
int main()
{
    
   ifstream cin("input.txt");
   //ofstream cout("output.txt");
   vector<string> v;
   string str,str1;
    int x,i;
    while(getline(cin,str))
   {
       v.push_back(str);
   }
    for(i=0;i<=v.size()-1;i++)
   {
    
       l:;
       cout<<"'Enter' for continue\n";
       x=_getch();
       if(x==13)
       {
           cout<<v[i]<<endl;
       }
       else
       {
           cout<<"Wrong\n";
           goto l;
       }
          
   }
    return 0;
}
Добавлено через 1 минуту
Croessmah, Спасибо, помогли.
P.S.S. Всем большое спасибо.
0
25.05.2013, 15:26

Не по теме:

Цитата Сообщение от NaikoN Посмотреть сообщение
goto l;
- о боже:facepalm:

0
2 / 2 / 1
Регистрация: 01.05.2013
Сообщений: 109
25.05.2013, 15:29  [ТС]
-=ЮрА=-, А что плохого? Я не нашел альтернативы.
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
25.05.2013, 15:30
Для тех кому может понадобиться код в стандарте и без извратов
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <string>
#include <vector>
#include <sstream>
#include <iostream>
using namespace std;
 
int main()
{
    string data = 
        "This is\n"
        "the test of\n"
        "aplication";
    stringstream ss(data);
    string line;
    vector<string> vec;
    while(getline(ss, line))
        vec.push_back(line);
    for(int i = 0; i < vec.size(); i++)
    {
        cout<<"PRESS ENTER FOR CONTINUE...";
        if(cin.get() == '\n')
            cout<<vec[i]<<endl;
    }
    return 0;
}

Не по теме:

вместо fstream стоит sstream для наглядности

Миниатюры
Подскажите аски код клавиши ENTER  
1
2 / 2 / 1
Регистрация: 01.05.2013
Сообщений: 109
25.05.2013, 15:30  [ТС]
P.S. Goto не так уж и плох как о нем отзываются.
0
25.05.2013, 15:35

Не по теме:

Цитата Сообщение от NaikoN Посмотреть сообщение
-=ЮрА=-, А что плохого? Я не нашел альтернативы.
-
1 - возможность ухода программы в infinte loop
2 - неопределённость поведения кода в случае возникновения ошибки внутри блока метка-goto
есть ещё много ньансов
Цитата Сообщение от NaikoN Посмотреть сообщение
Я не нашел альтернативы.
- выше альтернатива, искал значит плохо.
Указанный оператор безусловного перехода нерекомендован при написании профессиональных кодов.
Хочешь пиши, но кроме как "гавнокод" на код с goto не скажут.
ЗЫ
Цитата Сообщение от NaikoN Посмотреть сообщение
P.S. Goto не так уж и плох как о нем отзываются.
- конечно же ты прав:wall:

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.05.2013, 15:35
Помогаю со студенческими работами здесь

Код клавиши Enter на калькуляторе
Всем здравствуйте ! Такая делема : знаю что код клавиши ентер на цифровой клавиатуре - 13. Да и если написать : void __fastcall...

Составить код, чтобы когда нажимаешь на клавиатуру, выводился Аски код
составить код, чтобы когда нажимаешь на клавиатуру, выводился Аски код

Аски код клавиш
Нужна программа определяющая аски код нажатой клавиши. Так же нужно выводить на экран происходящие операции

Как сложить аски код букв?
Привет, не могу додуматься как поделить аски код и сложить его, собственно надо буквы перевести в аски и потом их сложить, а полученную...

Вывод символа имея его аски код
Здравствуйте. скажите пожалуйста как можно вывести символ в текст бокс имея его аски код? если конкретнее то мне нужно сделать прогу...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru