版权声明: https://blog.csdn.net/SunPeishuai/article/details/83155638
1.
scanf读入一个字符避免读入上一个换行符
scanf()读取单个字符的时候,如果上面的语句也有scanf, 可能会读入换行符,导致读取的字符不是自己写入的字符。
如果用scanf("%c",&ch)
,那么程序不会忽略为了输入而按下的回车键操作,而是认为回车键是后续操作而继续响应;
而scanf(" %c", &ch)
在%c之前空格会告诉scanf忽略前面的空行,而等待第一个非空行元素读入其中。这样就能避免问题的出现。
2.
对于一个数组的名字切莫与自定义的变量类型相同,这样错第一不易改,第二涉及到自己的敲代码的风格。
3.scanf()与sscanf()
scanf()的输入速度比cin快的多,但scanf是C语言中的函数,不支持string对象,但支持字符数组 ,可通过转换实现输入
在C语言中,sscanf()函数可以将字符串按照你需要的方式分离出来,具体实现百度。