簡體   English   中英

字符計數程序不輸出任何內容

[英]Character counting program doesn't output anything

我已經嘗試過Dev-C ++和MinGW(32位),但是每次我運行代碼時,都沒有輸出。 我正在使用Windows7。以下是我的代碼。

#include<stdio.h>
main()
{
  long nc;
  nc=0;
  while(getchar()!=EOF)
    ++nc;
  printf("Number of chars are %ld ",nc);
}

我也嘗試按Ctrl-D發出EOF信號,但它不起作用。 當我輸入“ rajkumar”並[輸入]時,它什么也沒做。 當我兩次輸入“ rajkumar”和^ Z [enter]時,它結束。 我要問的是為什么它不打印預期的輸出? 當我第一次嘗試它時,它可以正常工作兩次,但是后來我不知道出了什么問題。

基於此答案 ,要觸發EOF檢測,

  • 首先回車
  • 然后按下控件 Z (或Linux上的^ D),該控件必須在該行的開頭
  • 如果仍未觸發檢測,請再次按ENTER

要在Windows上發出EOF信號,請按Ctrl-Z,然后按Enter。

注意:這適用於Windows控制台。 如果在IDE中運行程序,則IDE可能會或可能不會發出EOF信號。

getchar()獲得單個字符,並且還接受Enter。 因此,如果先按r再按Enter,則僅輸入r。 因此,您需要在按鍵后按Enter。 沒有Enter,getchar()將不接受該字符。

嘗試在打印文件的末尾添加\\ n。 類似於: printf("Number of chars are %ld /n",nc);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM