关于linux-centos下,c调用scanf函数的发现。
我最近做一个软件,就是在终端上打印一个菜单,然后靠人的输入选择对应的功能。
1-----------------------------INIT_DEV
2-----------------------------RUN
3-----------------------------STOP
4-----------------------------JUMP
0-----------------------------EXIT
int input;
采用的是scanf("%d",&input)方式,获取选择项。
但我发现,当我错输入字母时,获取到值是0;直接给我退出了,而不是进入到switch中的default里面。
机缘巧合,过程不再赘述。我发现,如果你scanf里面是%d,这时候你输入的是字母,它就不给你返回值,是你定义变量的初值。你初值是0那就是0。