[導入]《高質量程序設計》讀書筆記之strcpy等
這個問題就是典型的緩沖區溢出的問題。書上給了個netbsd中banner的例子以及應該使用的正確函數。正確的應該使用:strlcpy,strncpy,strlcat,fgets,snprintf,vsnprintf,getcwd;等。如果在vs下開發,則可以利用*_s等。其中的例子:char message[MAXMSG]; if (*argv) { strcpy(message, *argv); while (*++argv) { strcat(message, " "); strcat(message, *argv); } nchars = strlen(message); } else {。。。} 正確的:char *message; if (*argv) { for(i=0, j=0; i < argc; i++) j += strlen(a文章來源:http://blog.csdn.net/mejy/archive/2008/01/24/2062731.aspx

