2017-04-12 96 views
0

在我的代碼中,我想檢查在未輸入輸入值時是否按下回車鍵。因爲,除非輸入沒有輸入,否則通常按回車鍵纔會換行;而在這種情況下,我想通過檢測回車鍵來執行命令。通過「回車」鍵檢查C++中的空輸入檢測

#include <iostream> 
    #include <string> 
    using namespace std; 

    int main(){  
     String str=""; 
     while(str!="exit"){ 
      cin>>str; 
      if(input is not entered and enter key is pressed) 
      continue; 
      else 
      break; 
     } 
     return 0; 
    } 

我願意接受任何建議。

回答

0
#include<iostream> 
#include<conio.h> 
#include <string> 
using namespace std; 
int main() 
{  
char str[10]; 
char a; 
int i=0; 
cout<<"\nEnter the input :-"; 
do{ 
     a=getche(); 
     if(a!=13) 
     { 
     str[i]=a; 
     i++; 
     } 
     else 
      break; 
    } 
    while(a!=13); 
    return 0; 
} 

/*在上述代碼中getch();是在控制檯/輸出屏幕上輸入單個字符時不輸出它的方法,當輸入發生時,如果用13,13檢查是輸入鍵的ASCII值。 如果匹配,那麼它將根據您的要求終止..... */

0

下面是一個完整的示例。總之,您可以使用getline<string>,它會給你空的輸入以及當你點擊Enter鍵時。

#include <iostream> 
#include <string> 

int main() 
{ 
    while(true) 
    { 
     std::string in; 
     getline(std::cin, in); 

     if (in.empty()) 
     { 
      std::cout << "Enter key was pressed with no message" << std::endl; 
     } 
     else 
     { 
      std::cout << "Enter key was pressed with message" << in << std::endl; 
     } 
    } 
    return 0; 
}