清單 8. 示例錯誤
int main()
{
char p[5];
strcpy(p, "Hello, world.");
puts(p);
}
此程序可以在許多環境中“運行”,它編譯、執行并將“Hello, world.\n”打印到屏幕。使用內存工具運行相同應用程序會在第四行產生一個數組邊界違規的報告。在了解軟件錯誤(將十四個字符復制到了只能容納五個字符的空間中)方面,這種方法比在客戶處查找錯誤癥狀的花費小得多。這是內存工具的功勞。
結束語
作為一名成熟的 C 或 C++ 程序員,您認識到內存問題值得特別關注。通過制訂一些計劃和實踐,可以找到控制內存錯誤的方法。學習內存使用的正確模式,快速發現可能發生的錯誤,使本文介紹的技術成為您日常工作的一部分。您可以在開始時就消除應用程序中的癥狀,否則可能要花費數天或數周時間來調試。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/