Я могу преобразовать символ в строку, но не в строку - PullRequest
0 голосов
/ 18 января 2011

Я создаю программу на C ++, чтобы разбить массив символов, который пользователь вводит в отдельные символы, а затем добавить их в 2d массив. Биты ключевого слова хранятся в j-l символа. когда я пытаюсь передать значение символов части массива, это не работает, но когда я пытаюсь передать значение части массива символам, это работает. Кто-то, вероятно, упомянет о конфликте между строковыми функциями и массивами и переменными типа char. Кроме этой маленькой проблемы, установка работает для меня, и, если я пытаюсь изменить ее, она появляется с некоторыми ошибками. Есть ли простой способ решить эту проблему, не меняя массивы и функции другого типа? Если нет, пожалуйста, скажите мне, что делать, я только начинающий.

while (key[a] != '\0' ){

while(b <= 4){
        m++;
cipherarray[b][c] = key[a];

 if (m == 1 ) {

, если я перейду к «cipherarray [b] [c] = f;» это работает, но тогда cipherarray [b] [c] = "q"

f = cipherarray[b][c];
}

 if ( m == 2 )
 {
g = cipherarray[b][c];
}

 if ( m == 3 )
 {
h = cipherarray[b][c];
}

 if ( m == 4  )
 {
i = cipherarray[b][c];
}


 if ( m == 5 ) 
{
j = cipherarray[b][c];
}

 if ( m == 6 )
 {
k = cipherarray[b][c];
}

 if ( m == 7 )
 {
l = cipherarray[b][c];
}


a++;
b++;
if (key[a] == 0)
break; 
}

if (key[a] != 0){
c++;
b = 0;
}
}

Кстати, это ошибка, которую я получаю:

несовместимых типов при присвоении от std::string до char[2]

1 Ответ

0 голосов
/ 18 января 2011

Я только что изменил все символы на строки и функцию decalation.Я работал над этим так долго, что не мог понять, насколько это очевидно.

...