脚本宝典收集整理的这篇文章主要介绍了problems_c,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
问题:scanf("%ld", &input) 中,我在控制台上输入123a,它是将123赋值给input变量,但是缓存中还有一个a,导致下一次调用该语句时,下一个变量读取到的是a,导致读取失败。 有没有某种读取方法,将123a赋值给整型变量时,直接失败吗? 以下是获取长整型数值的函数:
long get_long(void) {
char ch;
long input;
while (scanf("%ld", &input) != 1) {
while ((ch = getchar()) != 'n')
putchar(ch); // 处理错误输入
printf(" (you entered) is not a long integer, pls enter a long integer value, such as 25, -178 or 3: ");
}
return input;
}
RCA:
以上是脚本宝典为你收集整理的problems_c全部内容,希望文章能够帮你解决problems_c所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。