error: 'x' was not declared in this scope C++

问题描述 投票:0回答:0

我的代码有问题..它会引发错误 - 错误:“day”未在此范围内声明。我该如何解决这个问题

循环是否有自己的范围级别? 如何在循环中使用 main func 中的变量

我学习 C++ 才 2 天,所以请使用更简单的词...

无论如何这是我的代码

#include <iostream>
#include <string>

int main(){

    std::string date{};

    std :: cout << "__________________________SECS CALCULATER__________________________\n";
    std :: cout <<"\n";

    do{
      std :: cout << R"(ENTER YOUR DATE IN DD\MM:)";
      std :: cin >> date;

      std::string x = date.substr(0,2);
      std::string y = date.substr(3,5);
      
      int day = std::stoi(x);
      int mth = std::stoi(y);


    }while(date.length()!=5);
    
    while(true){

      switch(mth){
            
            case 2:
               day+=31;
               break;
            case 3:
               day+=59
               break;
            case 4:
               day+=90
               break;
            case 5:
               day+=120
               break;
            case 6:
               day+=151
               break;
            case 7:
               day+=181
               break;
            case 8:
               day+=212
               break;
            case 9:
               day+=242
               break;
            case 10:
               day+=273
               break;
            case 11:
               day+=303
               break;
            case 12:
               day+=334
               break;
            default:
               std :: cout << R"(INVALID INPUT)";
               continue;
        }
    }

        
   int sec = (day*24)*60*60;
   std :: cout << "NO OF SECS IS:" << sec;

    return 0;
}
c++ error-handling scope
© www.soinside.com 2019 - 2024. All rights reserved.