C语言 C99标准与C11标准的部分更改的函数对比

文章目录

1. scanf 函数与scanf_s 函数

1.1 scanf函数

  • 函数原型:int scanf(const char *format, …);
  • 输入格式:scanf(“输入控制符”, 输入参数);
  • 功能:将从键盘输入的字符转化为“输入控制符”所规定格式的数据,然后存入以输入参数的值为地址的变量中。

1.2 scanf_s函数

  • 函数原型:暂时不知道,知道的朋友麻烦告诉一下
  • 输入格式:scanf(“输入控制符”, 输入参数,n);(scanf_s最后一个参数是缓冲区的大小,表示最多读取n-1个字符.)

1.3 两者区别

  • scanf 不会检查输入边界,可能造成数据溢出。

  • scanf_s 会进行边界检查。

1.4 注意事项

  • 通常使用格式 %s 时才有必要加上长度n
  • 使用 %d 格式时会有“格式字符串中传递的参数太多”的警告

待完善…

	本人撰写博客纯粹为记录自己在学习过程的遇到的困难、问题的解决办法。如有错误,请大家不吝指教!谢谢!
C语言  C99标准与C11标准的部分更改的函数对比C语言  C99标准与C11标准的部分更改的函数对比 tothk 发布了5 篇原创文章 · 获赞 0 · 访问量 182 私信 关注
上一篇:linux-带有std map和shared_ptr的奇怪内存行为


下一篇:可变重分配中的C 11内存释放