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

Тема в разделе "Общие вопросы по С и С++", создана пользователем Pingvin1, 14 ноя 2014.

  1. Pingvin1

    Pingvin1 Well-Known Member

    Регистрация:
    20 июл 2009
    Сообщения:
    50
    Симпатии:
    0
    При
    Код (C++):
    printf ("%s","константа");
    В Dev 5 C++ аля Visual Studio возникает ошибка, а как без ошибки вывести константу?
    Уточнение:[/
    не ошибка, а предупреждение
     
  2. Evgeniy

    Evgeniy Member

    Регистрация:
    23 авг 2014
    Сообщения:
    16
    Симпатии:
    0
    Код (C++):
    printf("константа!%c");
    Об этом речь?
     
  3. Pingvin1

    Pingvin1 Well-Known Member

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

    Pingvin1 Well-Known Member

    Регистрация:
    20 июл 2009
    Сообщения:
    50
    Симпатии:
    0
    То есть у компилятора возникает проблема при преобразовании строчной константы в массив символов оканчивающий терминатором. А как надо?
     
  5. Pingvin1

    Pingvin1 Well-Known Member

    Регистрация:
    20 июл 2009
    Сообщения:
    50
    Симпатии:
    0
    Следует работать через именованную константу, определённую сразу после #include …, через #define …
     
  6. Evgeniy

    Evgeniy Member

    Регистрация:
    23 авг 2014
    Сообщения:
    16
    Симпатии:
    0
    Через #define не самый лучший способ создавать константы, как по мне. Лучше создать переменную типа const для таких целей.
     
  7. Pingvin1

    Pingvin1 Well-Known Member

    Регистрация:
    20 июл 2009
    Сообщения:
    50
    Симпатии:
    0
    При использовании именованной константы, компилятор выдаёт тоже предупреждение.
    Лучше использовать
    с окончанием Const с подходящей буквы. А как использовать строчные константы при получении результата из функции, я пока использую переменную без const, правда на это компилятор просит обратить внимание.
     
  8. Pingvin1

    Pingvin1 Well-Known Member

    Регистрация:
    20 июл 2009
    Сообщения:
    50
    Симпатии:
    0
    Надо в описании функции указать, что она выдаёт результат const.
     
Загрузка...

Поделиться этой страницей