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

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

Войти
Регистрация
Восстановить пароль
 
TezRomacH
0 / 0 / 0
Регистрация: 27.09.2013
Сообщений: 6
#1

Переменная типа char - C++

27.09.2013, 17:50. Просмотров 362. Ответов 4
Метки нет (Все метки)

Учусь программированию на C++. Вот, столкнулся с проблемой. Пытался найти ответ в интернете, но об этом нигде не сказано. Дело в том, что я хочу сделать программу рандомно выбирающую имя. После же, это имя выводящее. Но ничего не выходит. Пишет какую то белиберду, я ничего не понимаю. Помогите найти ошибку и подскажите способ устранить её.

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 "stdafx.h"
#include <iostream>
#include <ctime> // подключение библиотек времени
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{ 
start:
setlocale (LC_ALL, "Russian");//вывод русских букв
srand( time (0) ); // каждый раз при компиляции рандом
 
char name[30]; // первая мною используемая символьная строка
int a = rand ()%4 + 1; // а присваивается рандомное значение от 1 до 4
switch (a)
{
case 1: {char name[30] = {"Роман"};
break;}
case 2: {char name[30] = {"Михаил"};
break;}
case 3: {char name[30] = {"Дмитрий"};
break;}
case 4: {char name[30] = {"Вадим"};
break;}
default: break;
}
 
cout << "Ваше имя - " << name << "?" << endl;
cout << "Повторить (1), или выйти (2) - ";
int y;
cin >> y;
if (y==1) goto start;
else return 0;
 
system ("pause");
return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.09.2013, 17:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переменная типа char (C++):

Есть переменная типа char содержащая цифру; как записать это значение в переменную типа int? - C++
Пожалуйста, напомните стандартную функцию

Аргумент типа char** не совместим с параметром типа const char* - C++
Программа должна позволять заносить в структуру данные и выводить на экран информацию о поездах, следующих до определенной станции: ...

Аргумент типа char (*)[1000] несовместим с параметром типа char** - C++
Здравствуйте! Есть вот такая структура: #define max 1000 struct expr { char s; int index; };

Добавление в массив типа char * одного элемента типа char - C++
Дан класс Строка, содержащий указатель на char - адрес динамически выделенной для размещения символов строки памяти и длину строки. Нужен...

Ошибка "аргумент типа char несовместим с параметром типа char*" - C++
#include &lt;iostream&gt; using namespace std; const int N=4; //размер очереди struct Queue { int data; //массив данных char...

"Аргумент типа char несовместим с параметром типа const char" - C++
Программа должна перевести все символы до * в число,но что то пошло не так. P.S прошу не ругать. #include &lt;stdio.h&gt; #include...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
newb_programmer
237 / 237 / 19
Регистрация: 03.09.2011
Сообщений: 555
27.09.2013, 17:57 #2
del
0
Fyret
184 / 170 / 13
Регистрация: 30.07.2013
Сообщений: 359
27.09.2013, 18:08 #3
C++
1
case 1: {char name[30] = {"Роман"};
Здесь Вы создали новый массив name. А тот, который объявили на 12-й строке и выводите на 27-й, никак не меняется. Погуглите про области видимости переменных.
0
newb_programmer
237 / 237 / 19
Регистрация: 03.09.2011
Сообщений: 555
27.09.2013, 18:08 #4
Цитата Сообщение от TezRomacH Посмотреть сообщение
Учусь программированию на C++. Вот, столкнулся с проблемой. Пытался найти ответ в интернете, но об этом нигде не сказано. Дело в том, что я хочу сделать программу рандомно выбирающую имя. После же, это имя выводящее. Но ничего не выходит. Пишет какую то белиберду, я ничего не понимаю. Помогите найти ошибку и подскажите способ устранить её.
C++
1
2
3
4
5
6
7
8
...
char *name;
...
case 1: 
    {
        name="asdas";
    }
...
0
rublag
52 / 52 / 4
Регистрация: 06.02.2013
Сообщений: 156
27.09.2013, 18:13 #5
в c++ лучше использовать string вместо char*, а goto использовать вообще ненадо
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
#include <iostream>
#include <ctime> // подключение библиотек времени
#include <cstdlib>
using namespace std;
 
int main()
{
    int y=0;
    string name;
    do
    {
        srand( time (0) ); // каждый раз при компиляции рандом
 
        int a = rand ()%4 + 1; // а присваивается рандомное значение от 1 до 4
        switch (a)
        {
            case 1: {name = "Роман";
                break;}
            case 2: {name = "Михаил";
                break;}
            case 3: {name = "Дмитрий";
                break;}
            case 4: {name = "Вадим";
                break;}
            default: break;
        }
 
        cout << "Ваше имя - " << name << "?" << endl;
        cout << "Повторить (1), или выйти (2) - ";
        cin >> y;
    } while(y == 1);
 
    return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.09.2013, 18:13
Привет! Вот еще темы с ответами:

Аргумент типа "unsigned char*" несовместим с параметром типа "const char*" - C++
int f(unsigned char s, unsigned char q) { N = strlen(s); //Ошибка тут... M = strlen(q); //...и тут Как исправить?

Аргумент типа WCHAR* не совместим с параметром типа const char* - C++
Как исправить косяк? VS12 ругаетсЯ #include &lt;windows.h&gt; #include &lt;stdlib.h&gt; #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include...

Читать строку типа string из файла, разбить ее на массив слов типа char - C++
Нужно сделать так что бы строчка вида &quot;&lt;слово1&gt;:&lt;слово2&gt;:&lt;слово3&gt;:&lt;слово4&gt;&quot; , считывалась и каждое слово заносилось в свою переменную....

Сформировать массив типа bool из массива типа char - C++
Доброго времени суток! После ввода элементов массива вылазит ошибка &quot;Необработанное исключение: System.NullReferenceException ... &quot;...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
27.09.2013, 18:13
Ответ Создать тему
Опции темы

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