簡體   English   中英

如何定義全局字符矩陣?

[英]How to define a global char matrix?

我正在定義一個char矩陣,其中包含對另一個矩陣內容的描述。 這個矩陣應該是全球性的。 在我的標題之一中,我寫了以下內容:

char descr[6][20];

descr[0][] = "name0";
descr[1][] = "name1";
descr[2][] = "name2";
descr[3][] = "name3";
descr[4][] = "name4";
descr[5][] = "name5";

編譯時出現以下錯誤:

../../include/header1.h:56:1: warning: data definition has no type or storage class
     descr[0][] = "name0";
../../include/header1.h:56:1: warning: type defaults to ‘int’ in declaration of ‘descr’ [-Wimplicit-int]
../../include/header1.h:56:1: warning: ISO C forbids zero-size array ‘descr’ [-Wpedantic]
../../include/header1.h:56:1: error: array type has incomplete element type ‘int[]’

有什么問題? 我正在使用c89

您可能要初始化您的descr

char descr[6][20] = {
    "name0",
    "name1",
    "name2",
    "name3",
    "name4",
    "name5", /* you may leave the last comma out */
};

初始化(通常)進入一個頭文件。

如果您不想初始化並且喜歡以后的賦值(例如在原始代碼中),請使用strcpy

char descr[6][20];
strcpy(descr[0], "name0");
/* ... */

同樣,此代碼不適用於頭文件。

暫無
暫無

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

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