了解C语言中的getchar()和putchar()

Atinesh

getchar()函数从屏幕上读取一个字符并返回其ASCII值。此函数一次仅读取单个字符。

putchar()函数将传递的字符放在屏幕上,并返回该字符的ASCII值。此功能一次只放置一个字符。

现在考虑Code 1下面

#include<stdio.h>
void main()
{
    int c=getchar();
    putchar(c);
}

输出:

A B C D

一个

现在考虑Code 2

#include<stdio.h>
void main()
{
    int c=getchar();
    while(c!=EOF)
    {
        putchar(c);
        c=getchar();
    }
}

输出:

一个

一个

A B C D

A B C D

^ Z

Code 1可以正常工作,因为,如果我们键入多个字符,则getchar()函数将仅读取第一个字符并返回其ASCII值。但是在Code 2with循环的情况下,为什么要打印整个字符串而不是1个字符?

斯皮卡特里克斯

在代码2中,当您输入字符串时,说出"abcd"并按Enter键,输入的数据将进入标准输入stream(stdin1getchar()从中读取一个字符stdin,然后程序的执行到达while循环。

在循环中,putchar输出存储在c中的字符,即您输入的第一个字符a下一个对的调用getchar不再等待进一步的输入,因为它看到了stdin2中的字符getchar将读取下一个字符,b由于不是EOF,因此循环继续。

这个过程一直持续到getchar读取一个EOF字符(使用来输入CTRL+Z),最后程序结束。

1:所有数据都包括您按的Enter键。
2:这也意味着getchar当字符stdin为空时等待您输入字符

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C语言中的Putchar和Getchar

来自分类Dev

在C语言中使用putchar和getchar删除多个空格

来自分类Dev

C:getchar()和putchar()

来自分类Dev

了解C语言中的指针和堆栈

来自分类Dev

C语言中的Getchar函数

来自分类Dev

C语言中的Getchar函数

来自分类Dev

C语言中scanf和getchar之间的区别

来自分类Dev

了解C语言中的fork

来自分类Dev

了解C语言中的realloc()

来自分类Dev

了解C语言中的scanf

来自分类Dev

了解C语言中的读写

来自分类Dev

C编程语言,第1章练习1.10(Getchar和Putchar)

来自分类Dev

了解C语言中的汇编代码

来自分类Dev

了解C语言中的函数指针的问题

来自分类Dev

了解C语言中的指针结构

来自分类Dev

了解C语言中的read()操作吗?

来自分类Dev

了解C语言中的基本变量声明

来自分类Dev

了解C语言中的函数指针的问题

来自分类Dev

了解C语言中的运算符

来自分类Dev

C语言中的函数指针-了解

来自分类Dev

C-使用getchar和putchar交换字符

来自分类Dev

涉及getchar()和putchar()的C简单代码意外输出

来自分类Dev

在C中使用putchar和getchar删除多个空格

来自分类Dev

putchar()和getchar()循环说明

来自分类Dev

了解快速语言中的取消初始化和继承

来自分类Dev

了解快速语言中的取消初始化和继承

来自分类Dev

在C语言的字符计数程序中了解getchar()

来自分类Dev

了解C语言中的sizeof运算符

来自分类Dev

了解C语言中的数组操作指针语法