scanf这样写clion标黄警告没看懂

scanf这样写clion标黄警告没看懂

https://img1.sycdn.imooc.com//climg/630eaf9b09269ea514180643.jpg

我用的clion,ide把scanf标黄了,说明是一个警告,但是没看出来哪里有问题

https://img1.sycdn.imooc.com//climg/630eafed09ca3fb314180643.jpg

Clang-Tidy: 'scanf' used to convert a string to an integer value, but function will not report conversion errors; consider using 'strtol' instead


让我用strtol替代?没看懂,怎么替代?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
山行老师 2022-08-31 10:43:02
1)报警告的意思是由scanf把字符串转换为int是不安全的,建议你使用函数strtol();//不安全是因为用户不总是输入数字字符,可能输入其他的,可能输入字符过长……
2)strtol()是C++的函数,因为后面的代码要在虚拟机下跑,要用纯c的环境,所以不推荐使用;
3)网上有关闭这个警告的方法:
https://blog.csdn.net/AKAPinkman/article/details/105497433
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师