今天隨手寫個程序,在網上隨意找個代碼照着寫,無意中使用了
char *p = new char(10);
來創建char數組,而且在netbeans上編譯運行都沒有問題,結果在oj上一直報runtime error,放在同學計算機上用codeblock運行也報錯。
后來發現是這個分配的問題:
char *p = new char[65]; // 分配一個大小為65的char數組 char *p = new char(65); //分配一個char ,並用65來初始化值
后來程序中改成new char[10]就沒有問題了。至於為什么netbeans能運行錯誤的代碼,我也不知道。。。。