Разница между scanf и scanf_s в C

Хотя моя программа выдает требуемый результат. Есть много предупреждений о том, что scanf() не следует использовать, и вместо этого попробуйте использовать scanf_s().

Возможная причина этого предупреждения??

Это происходит со всеми программами, использующими функцию scanf. Даже простое сложение чисел.


person user3743672    schedule 09.07.2014    source источник
comment
Какая программа? Разместите соответствующий код!   -  person shree.pat18    schedule 09.07.2014
comment
Перейдите по этой ссылке in.answers.yahoo.com/question/index?qid=20081030175426AAWMnHi.   -  person Blisskarthik    schedule 09.07.2014
comment
Кроме того, пожалуйста, ознакомьтесь с документацией по этим функциям, прежде чем спрашивать здесь.   -  person Mat    schedule 09.07.2014


Ответы (1)


С scanf с некоторыми аргументами формата можно привести к сбою вашей программы, если вы используете входы неограниченного размера. scanf_s требует указать размер выходных буферов, тем самым ограничивая возможность переполнения буфера (при условии, что вы правильно указали размеры выходных буферов).

person mvp    schedule 09.07.2014