首页 > 解决方案 > C++ 检查是否为空行

问题描述

如果输入为空行输出“0”。
我不能只使用字符串字符,这可能吗?

char liczba[20];   
cin>>liczba;  
if (liczba!=NULL) { cout << "0"; break; }

不适合我

标签: c++

解决方案


您可以简单地检查if (liczba[0] == 0) { ... },或者if (*liczba == 0) { ... }

这将检查字符串中的第一个字符是否为空终止符。如果第一个字符为空,则字符串为空。

这是一个完整的工作示例:

#include <iostream>

int main()
{
    char message[80];

    std::cout << "Give me some input!" << std::endl;

    std::cin >> std::noskipws >> message;

    if (*message == 0)
    {
        std::cout << "There's nothing there!\n";
    }
    else
    {
        std::cout << "Thank you, that's helpful.\n";
    }
}

告诉流将std::noskipws空格视为任何其他字符,因此您可以获得空行。


推荐阅读