Страницы

Поиск по вопросам

понедельник, 23 декабря 2019 г.

Какой формат scanf использовать для ввода bool

#c


Всем привет! 

scanf("%i", &reverse_sort);  


Компилятор ругается на несовместимость спецификатора и вводимых данных:


  /home/yura/gitclone/c_git/arr_sort.c|15|предупреждение: format «%i» expects argument
of type «int *», but argument 2 has type «_Bool *» [-Wformat=]|

    


Ответы

Ответ 1



Один из случаев, когда разные части стандарта подтягиваются с разной скоростью. Не существует пока спецификатора для bool-переменных. Корректный способ сделать то, что Вы хотите: int temp; bool reverse_sort; scanf("%i", &temp); reverse_sort = temp;

Ответ 2



Такого формата нет. Считывайте int - а потом уже приводите к bool.

Комментариев нет:

Отправить комментарий