2017-04-12 58 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; 
}