Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 关于C++;_C++ - Fatal编程技术网

C++ 关于C++;

C++ 关于C++;,c++,C++,我请求帮助了解: -在本节目中: #include <iostream> int main() { int j = 0; int k = 1; int m = -1; int n = 1; int p = ((j * 300) - (4 * n) - (7 * m)); if (int l = ((j * 300) - (4 * n) - (7 * m)) > 0) { std::cout <<

我请求帮助了解: -在本节目中:

#include <iostream>

int main() 
{
    int j = 0;
    int k = 1;
    int m = -1;
    int n = 1;

    int p = ((j * 300) - (4 * n) - (7 * m)); 

    if (int l = ((j * 300) - (4 * n) - (7 * m)) > 0) {
        std::cout << "l is egual: " << l - 1 << std::endl;
    }   
    else {
        std::cout << "l is negative: " << l << std::endl;
    }

    if (p > 0) {
        std::cout << "p is egual: " << p - 1 << std::endl;
    }   
    else {
        std::cout << "p is negative: " << p << std::endl;
    }

    return 0;
}
#包括
int main()
{
int j=0;
int k=1;
int m=-1;
int n=1;
int p=((j*300)-(4*n)-(7*m));
如果(intl=((j*300)-(4*n)-(7*m))>0){
标准::cout
你明白吗


你明白吗?

条件下定义变量,如果
语句是一个鲜为人知的特性。恐怕你没有按照规定使用它。当你写:

if (int l = <whatever>)
int l = ((j * 300) - (4 * n) - (7 * m)) > 0

l
将是0或1。因为您使用
((j*300)-(4*n)-(7*m))>0来初始化它。如果
语句是一个鲜为人知的特性,则在
的条件下定义变量。恐怕您没有按照规定使用它。您在编写时会看到:

if (int l = <whatever>)
int l = ((j * 300) - (4 * n) - (7 * m)) > 0

l
将是0或1。因为您使用
((j*300)-(4*n)-(7*m))>0来初始化它
您的代码本质上意味着(按
l
的范围进行模化):

或:

if(int l=(j*300)-(4*n)-(7*m);l>0){

std::cout您的代码本质上意味着(按
l
的范围进行模化):

或:

if(int l=(j*300)-(4*n)-(7*m);l>0){

std::难道是布尔运算进入l。你得到int l=2>0,然后l=1是布尔运算进入l。你得到int l=2>0,然后l=1是的,我理解。谢谢。是的,我理解。谢谢。任何尝试最后一个解决方案的人,确保你的编译器处于C++17模式。任何尝试最后一个解决方案的人,确保你的编译器处于C++17模式ler处于C++17模式。
int l = ((j * 300) - (4 * n) - (7 * m)) > 0;
if (l != 0) {
    std::cout << "l is egual: " << l - 1 << std::endl;
}   
else {
    std::cout << "l is negative: " << l << std::endl;
}
int l = (j * 300) - (4 * n) - (7 * m);
if (l > 0) {
    std::cout << "l is egual: " << l - 1 << std::endl;
}   
else {
    std::cout << "l is negative: " << l << std::endl;
}
if (int l = (j * 300) - (4 * n) - (7 * m); l > 0) {
    std::cout << "l is egual: " << l - 1 << std::endl;
}   
else {
    std::cout << "l is negative: " << l << std::endl;
}