發信人"mynews" <sonet.all@gmail.com>,
看板Programming
標 題一個非常簡單的c程ꘊ發信站: HiNetNews (Sat May 24 09:08:23 2008)
轉信站ptt!ctu-reader!ctu-gate!news.nctu!newsfeed.berkeley.edu!ucberkeley!new
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void){
char *str1="abcd";
char *str2 = "1234"; //<-----
char *str3;
strcpy(str3,str1);
exit(0);
}
這程式在 cygwin 編譯會過,但是執行時出錯
如果;把 //<----- 這一行拿掉,執行時就不會出錯
,而且結果如預期 str3 的值為abcd
在mingw 編譯會過執行時出錯
如果;把 //<----- 這一行拿掉,執行也出錯
=======================================
str3 在使用前需要配置大小嗎? 我看很多例子
都沒有在使用前配置他的大小,究竟哪種才是
正確的?
上面實際的問題是gcc 版本的問題,還是mingw/cygwin
的問題?
推 a1234957:我覺得不管怎麼樣,都要是要配置空間218.173.113.124 05/24 02:14
推 Huangs:當然要先配置 沒有出錯的話 只是運氣好218.167.161.209 05/25 10:43