Как конвертировать char * в const char * в C - PullRequest
0 голосов
/ 21 апреля 2020

Есть ли способ конвертировать char * в const char * на языке C? Я использую CodeBlocks в качестве моей IDE для Windows. Я слышал, что это невозможно сделать в basi c C. Это правда?

1 Ответ

0 голосов
/ 22 апреля 2020

Невозможно сделать это в основном c C

На основании одного вашего вопроса, без кода примера, ответ - нет. Вы можете назначить char* на const char*. Рассмотрим пример:

#include <stdio.h>

int main()
{
    char * str;

    str = "abcdefg";

    const char * cstr = str;

    puts(cstr);

    return 0;
}

Это совершенно законно. Если вас беспокоит жалоба компилятора, вы можете сделать следующее:

const char * cstr = (const char*)str

Это явно преобразует тип char* в тип const char*. Если вы хотите передать его в функцию void f(const char* s), вы должны сделать следующее:

f((const char*)str);

Надеюсь, это поможет.

...