Re: 還是同一個問題 (c語言)

看板Programming作者 (Alien)時間17年前 (2008/06/10 17:49), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/8 (看更多)
※ 引述《"mynews" <noreplay@gmail.com>, 看板: Programming》之銘言: : #include <stdio.h> : #include <stdlib.h> : #include <string.h> : int main(void){ : char *str1="123"; : char *str4="456"; : char *str3="789"; : strcpy(str3,str4); : exit(0); : } : 這程式編譯會過,但是執行會出現錯誤;string 在使用前需要配置空 : 間,不過我常在很多opensource 看到這類的用法 : char *__progname = "prog"; : 這樣用到底是不是正確的用法?安全的使用字串應該使用陣列? : char str[20]="prog"; : 那 chr *string[50] ; (字串陣列) 這種用法安全嗎? : 另外也有人這樣使用 chr str[]="prog"; : 到底那些用法是安全且正確? 問題不在於配置與否, 而是 你的 strcpy 的目標位置是不 能改變的 (指向 string literal) alien -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.155.236.82
文章代碼(AID): #18JauVLX (Programming)
討論串 (同標題文章)
文章代碼(AID): #18JauVLX (Programming)