我試圖通過修改一段代碼來幫忙,而且我擔心我會犯「當你定義一個變量時,你只能在定義的範圍內使用它」。定義一個在範圍之外使用的變量
試圖通過文本字符串來實現語言更改,而不是重複代碼。所以我想從字面上可以說...
if (language == 0)
{
static const XCHAR text1[] = ("HELLO");
} else {
static const XCHAR text1[] = ("BONJOUR");
}
然後才能夠在代碼中使用...
StCreate
(
ID_ST31,
20,
82,
780,
500,
ST_DRAW,
text1,
alt3Scheme
);
從我讀到這裏,上面的代碼會只初始化{}內的文本字段?我需要將變量設置爲NULL嗎?請告訴我我錯過了一些明顯的東西。
是的,但有一個「靜態」,並帶有重要性,不是嗎? –
你想做什麼?爲什麼不從一開始就把事情做好? –
爲什麼不能只是一個指向const char指針的指針,該指針在更高範圍內定義,並且由分支初始化?常量數組給你什麼? – StoryTeller