• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Печать Констант

  • Автор темы Pingvin1
  • Дата начала
P

Pingvin1

При
C++:
printf ("%s","константа");
В Dev 5 C++ аля Visual Studio возникает ошибка, а как без ошибки вывести константу?
Уточнение:[/
не ошибка, а предупреждение
 
E

Evgeniy

C++:
printf("константа!%c");
Об этом речь?
 
P

Pingvin1

Нет, Evgeniy.
При встрече в программе
C++:
printf ("%s","константа");
Компилятор даёт предупреждение: [ Warning ] deprecated conversion from string constant to 'char*' [ -Wwrite-strings ]
, а часто надо без всяких присвоений вывезти сообщение. Всё выводится, но как сделать так, чтобы компилятор не ругался?
 
P

Pingvin1

То есть у компилятора возникает проблема при преобразовании строчной константы в массив символов оканчивающий терминатором. А как надо?
 
P

Pingvin1

Следует работать через именованную константу, определённую сразу после #include …, через #define …
 
E

Evgeniy

Через #define не самый лучший способ создавать константы, как по мне. Лучше создать переменную типа const для таких целей.
 
P

Pingvin1

При использовании именованной константы, компилятор выдаёт тоже предупреждение.
Лучше использовать
переменную типа const
с окончанием Const с подходящей буквы. А как использовать строчные константы при получении результата из функции, я пока использую переменную без const, правда на это компилятор просит обратить внимание.
 
P

Pingvin1

Надо в описании функции указать, что она выдаёт результат const.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!