为什么printf语句连续运行中间优艾设计网_Photoshop问答的scanf没弹出来?
就四辣么拽丶 优艾设计网_PS论坛 2021-11-18 19:11 输入第一个字符并以空格结束输入后,该字符与’\n’会一起进入标准流输入,’\n’便会作为第二个scanf语句的内容输入,从而让你的程序出现问题。 加空格便会屏蔽空白字符(上次内存中的‘\n'和其它转义字符):%c前没空格,scanf()将读取标准输入流中的第一个字符,%c前有空格,scanf()则读取标准输入流中第一个非空白字符。
吃瓜群众在楼里 2021-11-18 19:15 应该是这个scanf读取了上一个输入的回车当成优艾设计网_设计输入字符了。在这个scanf之前加上fflush(stdin),或者将scanf的"%c"改为" %c"(%前加个空格),执行就正确了。
就四辣么拽丶 优艾设计网_PS论坛 2021-11-18 19:11 输入第一个字符并以空格结束输入后,该字符与’\n’会一起进入标准流输入,’\n’便会作为第二个scanf语句的内容输入,从而让你的程序出现问题。 加空格便会屏蔽空白字符(上次内存中的‘\n'和其它转义字符):%c前没空格,scanf()将读取标准输入流中的第一个字符,%c前有空格,scanf()则读取标准输入流中第一个非空白字符。
吃瓜群众在楼里 2021-11-18 19:15 应该是这个scanf读取了上一个输入的回车当成优艾设计网_设计输入字符了。在这个scanf之前加上fflush(stdin),或者将scanf的"%c"改为" %c"(%前加个空格),执行就正确了。
精彩评论