簡體   English   中英

我的基本零初始化代碼有問題嗎?

[英]is there something wrong with my basic zero initialization code?

#include <iostream>
int main()
{

int x{ 19 };
std::cout << "Hola!" << '\n';
std::cout << "Me llamo Kay\n";
std::cout << "And I am " << x << " years old\n";
std::cout << "Who are you?\n";
int y{};
std::cin >> y;
std::cout << "You are " << y << "?" << '\n';
return 0;
}

所以我希望代碼運行一個程序:

  1. 你好!
  2. 我拉莫凱
  3. 而我今年 19 歲
  4. 你是誰?
  5. [用戶輸入任何內容]
  6. 你是[用戶輸入]?

但我得到的是:

  1. 你好!
  2. 我拉莫凱
  3. 而我今年 19 歲
  4. 你是誰?
  5. [用戶輸入任何內容]
  6. 你是0?

編輯:在此處輸入圖像描述

您將 y 聲明為整數。 這意味着 y 只能用於包含數字。 在您的情況下,您希望 a 包含 std::string。 這意味着任何類型的文本,例如用戶輸入的文本。 因此,只需將int y{}更改為std::string y; . 並且不要忘記在 C++ 中您只能聲明一次變量,因此您必須刪除 y 的聲明之一。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM