軟體崩了為什麼會出現源碼
Ⅰ 程序崩潰是由什麼原因引起的請舉例說明
大意:你得到一個應用的源碼,該應用每次啟動都會出現程序崩潰。再你調試了10次後發現,在一個相同的條件下,該程序從不崩潰。
The question largely depends on the type of application being diagnosed. However, we can
give some general causes of random crashes.1.
Random variable: The application uses some random number or variable component
which may not be fixed for every execution of the program. Examples include: user
input, a random number generated by the program, or the time of day.2.
Memory Leak: The program may have run out of memory. Other culprits are totally
random for each run since it depends on the number of processes running at that
particular time. This also includes heap overflow or corruption of data on the stack.
It is also possible that the program depends on another application / external mole that
could lead to the crash. If our application, for example, depends on some system attributes
and they are modified by another program, then this interference may lead to a crash. Pro-
grams which interact with hardware are more prone to these errors.
In an interview, we should ask about which kind of application is being run. This information
may give you some idea about the kind of error the interviewer is looking for. For example,
a web server is more prone to memory leakage, whereas a program that runs close to the
system level is more prone to crashes e to system dependencies.
答案:該問題很大程度上取決於對該應用的診斷。但我們可以總結一下一些隨機常見的崩潰原因:
1. 不確定的變數:程序使用了隨機的數字或變數組件,在程序執行時沒有被很好的確定范圍。如:用戶輸入,隨機數,或時間。
2.內存泄漏:程序每次執行時都內存溢出。每次運行程序崩潰的罪魁禍首是隨機的,因為它依賴於在特定時間運行的進程數。
包括堆溢出或者是棧異常。
程序依賴於其它外部應用也可能導致崩潰。如果我們的應用依賴於一個系統某些系統屬性,他們被另一個程序修改,那麼這個干擾可能會導致系統崩潰。與硬體交互的程序更容易出現這些錯誤。
Ⅱ C程序中的一個函數編譯鏈接時通過了,但程序一啟動就崩潰了什麼原因
這種情況是因為程序源碼本身沒有語法錯誤之類的,所以可以編譯通過,但在邏輯上卻有錯誤,導致錯誤,比如內存讀寫錯。舉個例子,如果用scanf("%d",&a);時寫成scanf("%d",a);,編譯時並不會報錯,但運行時卻會因為讀了a的值指向的沒有許可權讀寫的內存而產生錯誤。
很有可能是函數寫得有問題,要不發上來看看吧。
Ⅲ 軟體源代碼是如何產生的 為什麼有源代碼
軟體源代碼是軟體編寫時候的程序,軟體exe形式是用基本計算機語言,c,c++,vb,vf之類編好後生成的,有了源代碼就相當於有了軟體的版權,可以自己再編輯和再開發
Ⅳ 點開手機上的某些APP,出現的是源代碼,該怎麼解決(我並不會查看源代碼)
這種問題主要是系統不穩定。
最根本的解決辦法就是備份通訊錄資料,然後恢復出廠設置。
Ⅳ 軟體的源代碼是什麼意思
源代碼(也稱源程序)是指未編譯的按照一定的程序設計語言規范書寫的文本文件,是一系列人類可讀的計算機語言指令。 在現代程序語言中,源代碼可以是以書籍或者磁帶的形式出現,但最為常用的格式是文本文件,這種典型格式的目的是為了編譯出計算機程序。計算機源代碼的最終目的是將人類可讀的文本翻譯成為計算機可以執行的二進制指令,這種過程叫做編譯,通過編譯器完成。
Ⅵ 軟體系統崩潰!為啥子
這跟你的硬碟,內存有關系,既然是老機器了,硬體設備都已經老化了,不如換換硬碟內存的!!現在的QQ,迅雷,和一些單機游戲可不比以前的了,現在會佔用很大的內存空間的。
Ⅶ 為什麼軟體和網站都是用源碼構成
你這個問題問的很好。因為網頁它就是一個個的超文本鏈接,背後就是由一串串的代碼組成的。沒有那些東西,就不會有網頁這個東西存在。就像我們打出的字,你看到的是漢字,但是由鍵盤一個個字母敲出來的,沒有那些字母,這個字就體現不出來。所以代碼要轉成計算機懂的語言,等於和計算機溝通,交代它怎麼做做什麼。如果沒有代碼軟體就沒有了大腦無法讀懂指領也就無法認知人的意思而工作了。
Ⅷ 誰知道應用程序崩潰是怎麼回事
崩潰的可能:
當一個程序不能按照你的要求工作的時候
可以說是崩潰了
崩潰的方式有很多種
最常見的就是 該程序執行了非法操作需要關閉。
也有就是沒有響應的,
或者造成別的程序錯誤的
都可以算是崩潰。
解決崩潰的方法:
1. 源碼,在開發工具環境Debug方式下運行,待錯誤發生時找到調試,到具體錯誤位置;
2. 使用工具調試,例如VC++可以使用Nemuga 的 Bround Check;
3. 源碼中加入關鍵點輸出,輸出信息到日誌,這樣用來定位崩潰發生的具體程序位置;
......