-Werror = format: как может знать компилятор
Я написал этот намеренно неправильный код
printf("%d %d", 1);
составление сg++
а также .-Werror=format
Компилятор дает это очень внушительное предупреждение:
error: format '%d' expects a matching 'int' argument [-Werror=format]
Насколько я вижу, тамКомпилятор не может сказать, что код неправильный, потому что строка формата isn 't анализируется до времени выполнения.
Мой вопрос: есть ли у компилятора специальная функция, которая включается для printf и аналогичных функций libc, или это функция, которую я мог бы использовать для своих собственных функций? Строковые литералы? "