Другие языки программирования и технологии

с++ внутри. Как из int преобразовать в char и *char и обратно. И есть ли аналог функций switch(a) где a не char a int?

АМ
А. М.
888
// Максим_Топоров_2011-12-10
#include <iostream>
using namespace std;

int main()
{
int Array[] = {89, 101, 115, 33};
char convertFromIntInChar;

for (int n = 0; n < sizeof(Array) / sizeof(int); n++)
{
// Выводит Yes!
convertFromIntInChar = (char) Array[n];
cout << convertFromIntInChar;
}

cout << endl << endl;

const char * str = "Yes of course!";
char * pstr;
pstr = (char *) str;

for (int n = 0; pstr[n] != '\0'; n++)
{
// Выводит Yes of course!
cout << pstr[n];
}

cout << endl;

char mas[] = {'1', '2', '3', '4', '5'};
int size = sizeof(mas) / sizeof(char);

for (int n = 0; n < size; n++)
{
switch((int) mas[n])
{
case 49: cout << endl << " It is one - \t\t" << mas[n]; break;
case 50: cout << endl << " These are two - \t" << mas[n]; break;
case 51: cout << endl << " These are three - \t" << mas[n]; break;
case 52: cout << endl << " These are four - \t" << mas[n]; break;
case 53: cout << endl << " These are five - \t" << mas[n]; break;
default: cout << endl << " Error!\a" << mas[n];
}
}
cout << endl;
const char * number = "12345";
char * newNumber;
newNumber = (char *) number;

for (int n = 0; newNumber[n] != '\0'; n++)
{
switch((int) newNumber[n])
{
case 49: cout << endl << " It is one - \t\t" << mas[n]; break;
case 50: cout << endl << " These are two - \t" << mas[n]; break;
case 51: cout << endl << " These are three - \t" << mas[n]; break;
case 52: cout << endl << " These are four - \t" << mas[n]; break;
case 53: cout << endl << " These are five - \t" << mas[n]; break;
default: cout << endl << " Error!\a";
}
}

int a[6] = {0};

const char * number_1 = "1";
int convertFromCharInInt_number_1;
convertFromCharInInt_number_1 = atoi(number_1);
a[0] = convertFromCharInInt_number_1;

const char * number_2 = "2";
int convertFromCharInInt_number_2;
convertFromCharInInt_number_2 = atoi(number_2);
a[1] = convertFromCharInInt_number_2;

const char * number_3 = "3";
int convertFromCharInInt_number_3;
convertFromCharInInt_number_3 = atoi(number_3);
a[2] = convertFromCharInInt_number_3;

const char * number_4 = "4";
int convertFromCharInInt_number_4;
convertFromCharInInt_number_4 = atoi(number_4);
a[3] = convertFromCharInInt_number_4;

const char * number_5 = "5";
int convertFromCharInInt_number_5;
convertFromCharInInt_number_5 = atoi(number_5);
a[4] = convertFromCharInInt_number_5;
cout << endl;
for (int n = 0; n < 6; n++)
{
switch(a[n])
{
case 1: cout << endl << " It is one - \t\t" << number_1; break;
case 2: cout << endl << " These are two - \t" << number_2; break;
case 3: cout << endl << " These are three - \t" << number_3; break;
case 4: cout << endl << " These are four - \t" << number_4; break;
case 5: cout << endl << " These are five - \t" << number_5; break;
default: cout << endl << " Error!\a";
}
}

cin.get();
}
& Владимир &
& Владимир &
78 448
Лучший ответ
А. М. спасибо!
atoi(&ch) - преобразование из символьного в инт, наоборот тоже подобная есть. В свитче можно использовать и интежер, ему как-то класть, что ты там напишешь) Единственное, вместо case '1' буит case 1
NK
Nurs1K Koshabaev
2 238
А. М. спасибо!