[問題] C 這樣的 assign 是合法的嗎?
struct TEST {
const char *str1;
const char *str2;
};
int main(void) {
struct TEST ob;
ob.str1 = "hello"
ob.str2 = "world"
return 0;
}
ob.str1 是一個 const char *,但是我將他指向給某一固定字串,我知道在宣告的時候
是合法的:
const char *str3 = "hello, world";
但是 ob.str1 = "hello" 應該不是合法的,對吧?因為 str1 只是一個指標,應該先配
置一固定記憶體給他之後,再透過如 strcpy() 來進行配置。不知道我這樣的想法正不
正確。看 code 的時候,常常會遇到類似上面的寫法。
麻煩大大為我解答一下,謝謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.202.86.252
→
02/24 16:56, , 1F
02/24 16:56, 1F
推
02/24 17:21, , 2F
02/24 17:21, 2F
→
02/24 17:22, , 3F
02/24 17:22, 3F
→
02/24 17:22, , 4F
02/24 17:22, 4F
推
02/24 17:29, , 5F
02/24 17:29, 5F
→
02/24 17:29, , 6F
02/24 17:29, 6F
→
02/24 17:31, , 7F
02/24 17:31, 7F
→
02/24 17:31, , 8F
02/24 17:31, 8F
→
02/25 21:44, , 9F
02/25 21:44, 9F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章