回覆列表
  • 1 # 盛夏木南

    “was not declared in this scope”是一個錯誤資訊,在編譯的時候會遇到。其含義為識別符號在其出現的地方是未被定義的。

    出現該錯誤的時候,會同時把未定義的變數名顯示出來。比如如下程式:

    int main(){printf("%d",i);//這個i是沒定義的。}

    這時就會顯示一個"i" was not declared in this scope或者類似的錯誤資訊出來。

    對於變數和函式,如果未定義都會出現這個錯誤,該錯誤出現時,需要根據出現該錯誤的行號及名稱,查詢對應名稱變數或函式的作用,一般有如下幾種可能:

    1、忘記定義。寫程式碼的時候疏忽了,導致一些變數直接使用但沒有定義。只要對應定義相應的函式或變數即可。

    2 、拼寫錯誤。寫程式碼的時候,敲錯了字元。比如sum敲成了Sum, average敲成averge等。對應修改即可。

    3 、作用域不正確。在超出變數和函式的作用域部分使用了該變數或函式。需要透過定義位置,或增加宣告的手段,加大變數的作用域使其包含引用位置。

    由於“printf”是C語言的列印方法,所以在g++編譯器下需要引用標頭檔案#include <stdio.h>

    或者將printf換成c++中cout列印方法

  • 中秋節和大豐收的關聯?
  • “朱”字開頭的成語有哪些?