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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 35, средняя оценка - 4.77
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
#1

[Warning] multi-character character constant - C++

09.04.2009, 13:03. Просмотров 4690. Ответов 8
Метки нет (Все метки)

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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include <iostream>
using namespace std;
class toolBooth
{
      private:
      unsigned int car;
      double money;
      public:
             toolBooth():car(0),money(0)
             {}
             void payingCar()
             {
                    car++;
                    money+0,50;
             }
             void nopayCar()
             {
                    car++;
             }
              void vvod()
             {
                   Label:;
                   char ch;
                   cout<<"Vvedite mashinu=(y,n,esc)=";
                   cin>>ch;
                   switch(ch)
                   {
                             case 'y':
                                  payingCar();
                                  goto Label;
                                  break;
                             case 'n':
                                  nopayCar();
                                  goto Label;
                                  break;
                             case 'esc':
                                  esc();
                   }
             }
                                  
              void display()
             {
                    cout<<car;
                    cout<<money;
             }
             void esc()
             {
                  display();
                  system("pause");
             }
};
int main()
{
    toolBooth s1;
    s1.vvod();
    return 0;
}
Ошибки вот:
1.[Warning] multi-character character constant
2.[Warning] overflow in implicit constant conversion

Программа конечно работаетНо не правильно,и притом вылетает если вводишь esc!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2009, 13:03     [Warning] multi-character character constant
Посмотрите здесь:

Операторы if и char - Multi-character character constant - C++
Здравствуйте я мало нашёл информации о работе if с char, вот мой код: #include &lt;iostream&gt; using namespace std; int main() ...

multi-character character constant - C++
Привет! Я решил написать виселицу на С++ для консоли. И у меня вылетает ошибка multi-character character constant. Вот сам код: ...

[Warning] character constant too long for its type - C++
Подскажите, пожалуйста, что я не так сделал? Выдает ошибки, что &quot; character constant too long for its type &quot; #include &lt;iostream&gt; ...

Вылезает: [Warning] character constant too long for its type - C++
#include &lt;iostream&gt; #include&lt;conio.h&gt; #include&lt;math.h&gt; using namespace std; int main() { int x,y; cout &lt;&lt;&quot;Введу x&quot;; cin...

Error: Unresolved external 'character::character(int)' - C++
Error: Unresolved external 'character::character(int)' referenced from C:\USERS\АДМИНИСТРАТОР\DOCUMENTS\RAD...

[C++ Error] Unit1.cpp(9): E2129 Character constant too long (or empty) - C++
Ошибка : Unit1.cpp(9): E2129 Character constant too long (or empty) Указывает на cout&lt;&lt;x&lt;&lt;' '; Исходник : ...

Не могу исправить ошибку(error C2137: empty character constant) - C++
задание найти с помощью функции максимальный и минимальный элемент массива размерностью m*n и вывести на экран ошибка одна: error...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,653
Записей в блоге: 1
09.04.2009, 13:12     [Warning] multi-character character constant #2
money+0,50; может money+=0,50;
вылетает если вводишь esc
ну а вы что хотели в char ch; строку запихнуть
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
09.04.2009, 13:18  [ТС]     [Warning] multi-character character constant #3
Цитата Сообщение от ISergey Посмотреть сообщение
money+0,50; может money+=0,50;
Исправил money,а вот как исправить чтобы прога норм была

Добавлено через 49 секунд
Цитата Сообщение от ISergey Посмотреть сообщение
ну а вы что хотели в char ch; строку запихнуть
Ну а это ввод буквы для подсчета машин или денег
чтобы выбрать по функции тот или иной метод
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,653
Записей в блоге: 1
09.04.2009, 13:25     [Warning] multi-character character constant #4
я имел ввиду
C++
1
2
3
char ch;
cin>>ch// in 'y' нормально 
cin>>ch// in "esc" здесь баг.
замените так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
switch(ch)
{
case 'y':
    payingCar();
    goto Label;
    break;
case 'n':
    nopayCar();
    goto Label;
    break;
case 'q':
    esc();
}
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
09.04.2009, 13:51  [ТС]     [Warning] multi-character character constant #5
Цитата Сообщение от ISergey Посмотреть сообщение
я имел ввиду
Спасибки,а все таки почему это считается багом?

Добавлено через 5 минут 45 секунд
Цитата Сообщение от ISergey Посмотреть сообщение
money+0,50; может money+=0,50;
И все таки ввожу 9 раз y,Пишется машин 9,а сумма 0,почему так?

Добавлено через 5 минут 31 секунду
И все таки интересно какой тут метод можно сделать константным?
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,653
Записей в блоге: 1
09.04.2009, 13:56     [Warning] multi-character character constant #6
Вы находите разницу между символом и строкой?
C++
1
2
3
4
char ch = 'x';// один символ
char str[6] = "string";// строка
char buff[20];
cin>>buff;// можно ввести строку не больше чем 20 символов.
И все таки ввожу 9 раз y,Пишется машин 9,а сумма 0,почему так?
Код
money+=0[COLOR="Red"].[/COLOR]50;
вместо "," нужно "."

Добавлено через 2 минуты 30 секунд
Цитата Сообщение от Tiami Посмотреть сообщение
И все таки интересно какой тут метод можно сделать константным?
вот эти два
C++
1
2
3
4
5
6
7
8
9
10
    void display() const 
    {
        cout<<"car "<<car<<endl;
        cout<<"money "<<money<<endl;
    }
    void esc() const
    {
        display();
        system("pause");
    }
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
09.04.2009, 14:00  [ТС]     [Warning] multi-character character constant #7
Цитата Сообщение от ISergey Посмотреть сообщение
Вы находите разницу между символом и строкой?
Я строки пока не проходилВот и не наюСпс за консультацию

Добавлено через 30 секунд
Сам учусь)программировать Хотя и не учусь на программиста

Добавлено через 37 секунд
И массивы непроходил
Monte-Cristo
2788 / 1374 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
09.04.2009, 19:03     [Warning] multi-character character constant #8
Цитата Сообщение от ISergey Посмотреть сообщение
char str[6] = "string";// строка
правильно вот так вот:
C++
1
char str[7] = "string";
потому что, для строк, один символ отводится для нулевого '\0'. т.е. массив строк должен быть на 1 единицу больше чем символов.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.04.2009, 19:16     [Warning] multi-character character constant
Еще ссылки по теме:

Отключить предупреждение (character constant too long for its type [enabled by default]) - C++
Компилятор mingw32 пишет предупреждение: character constant too long for its type if (fileName == L'//' || fileName == L'\\') ...

Не линкуется проект с Use Unicode Character Set - C++
Такая проблема: 1) Есть проект (dll) в котором объявлен и описан метод класса CMyClass: SetStr(CString str); как вариант ...

Dev-C++ выдает ошибку error: converting to execution character set: Illegal byte sequence - C++
Кто в курсе, в чем ошибка. Вот код минимального приложения #include &lt;windows.h&gt; int WINAPI WinMain(HINSTANCE hInstance, ...

[Warning] deprecated conversion from string constant to 'char*' - C++
Где ошибка?? #include&lt;iostream&gt; #include&lt;windows.h&gt; #include&lt;ctime&gt; using namespace std; void input(char* name,int n){ ...

[Warning] deprecated conversion from string constant to 'char*' - C++
В общем делаю классы, но не получается выводит ошибку. файл Selhoz.h #ifndef _SELHOZ_H_ #define _SELHOZ_H_ #include...


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

Или воспользуйтесь поиском по форуму:
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,653
Записей в блоге: 1
09.04.2009, 19:16     [Warning] multi-character character constant #9
Цитата Сообщение от Don Corleone Посмотреть сообщение
правильно вот так вот:
C++
1
char str[7] = "string";
потому что, для строк, один символ отводится для нулевого '\0'. т.е. массив строк должен быть на 1 единицу больше чем символов.
ну да. завтыкал
Yandex
Объявления
09.04.2009, 19:16     [Warning] multi-character character constant
Ответ Создать тему
Опции темы

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