小丑9 发表于 2022-10-22 15:26:19

c语言中小写变大写的问题

在图片中第11行哪里,为什么我输入一个“hello”,一个字符串他依然可以变大写呢,它是每个字符单独进行运算的吗

jackz007 发表于 2022-10-22 15:33:22

本帖最后由 jackz007 于 2022-10-22 15:46 编辑

         是的,只要没有按下 F6 或 <Ctrl>-z 键盘输入将始终继续,当然,你每次输入的字符必须是小写字母或者回车,输入其它字符会看到莫名其妙的字符被打印输出。

         scanf() 是带有缓冲的键盘输入,当这个函数被调用的时候,程序会等待键盘输入,在按下回车键之前,可以随意编辑修改键入的内容,按下回车键以后,函数才会开始返回,而且,每调用一次,从键盘缓冲区读取一个输入字符,一直到键盘缓冲区被读完,然后,会继续等待下一批键盘输入,直到按下 F6 或者 <Ctrl>-z 为止。于是,你会看到,一次输入会对应多个字符的打印输出。例如,你键入的 "hello" 会被变换成 "HELLO" 并得到打印输出。
页: [1]
查看完整版本: c语言中小写变大写的问题