C ++ Char ошибки - PullRequest
       3

C ++ Char ошибки

0 голосов
/ 09 января 2020

Итак, я пытаюсь взять второй-первый символ из Expresie, который является массивом char, и скопировать его в переменную char, а затем использовать функцию strcat, чтобы поместить эту переменную в конец другого символа массив Stiva. это код:

int SHIFT(char Expresie[], char Stiva[], int x)
{
        char a=Expresie[0];
        strcat(Stiva,a);

И вот как они определены в основном:

    int main()
{
    char Expresie[100];
    char Stiva[100];

Проблема в том, что когда я его запускаю, он говорит: недопустимое преобразование из 'char' в 'const char *'

1 Ответ

1 голос
/ 09 января 2020

strcat добавляет строки, а не символы - ему нужен указатель на первый символ "C строки", а не один char.

Самый простой способ сделать это - добавьте персонажа непосредственно в конце (если, конечно, есть место):

int SHIFT(char Expresie[], char Stiva[], int x)
{
    char a=Expresie[0];
    size_t length = strlen(Stiva);
    Stiva[length] = a;
    Stiva[length+1] = 0;
    // ...
...