如何避免由於編譯器差別帶來的錯誤

2021-05-21 17:41:30 字數 880 閱讀 3091

1、判題系統使用的是g++編譯器,和普通使用的tc,vc都有所不同,建議大家使用dev c++作為ide,或者用tc和vc寫**,提交前使用dev c++編譯,預防編譯錯誤。

提交c語言**最好使用g++,g++相容c和c++。c的**可以用gcc也可用g++提交,而c++的**不能夠用gcc提交,只能用g++。

2、g++包含庫的時候不要使用iostream.h,應該使用

有些常用的函式所在的庫會被vc自動包含,但是不會被g++包含。

例如memset,strlen,strstr等和字串處理相關的函式在庫中;abs在中;fabs,sin,sqrt等數學函式在中

為了避免ce,大家可以索性一次性把所有可能用到的庫都給包含上。

c++注意要使用using namespace std;

3、關於整數,在g++下,long和int是完全一樣的

4、浮點數:使用double以減小誤差,格式控制字串是"%lf"(不要使用float)。浮點數的相等不能直接用==來判斷,需要使用實數判等。

5、識別符號,g++中有一些在vc中沒有的保留字,比如and,or,not等等,使用這些保留字作為識別符號會產生ce。

6、對於輸入輸出,建議不要使用cin和cout,這種輸入輸出方式會比較慢,在資料量大的時候容易引起超時。

7、關於main函式,定義一定要是int型,並記得加上return 0。

int main()

8、當使用類似於for (int i=0;i9、輸入法在敲**和提交**的時候一定要確保關閉,**中(除了注釋部分)有全形字符會引起ce,注釋建議使用英文。

10、使用stl的同學請注意例如下面的宣告是會引起ce的

vector> adj; 應該改為 vector> adj;

連續兩個左右箭頭間要乙個空格。

C C 如何避免由於編譯器差別帶來的錯誤

位址 1 判題系統使用的是g 編譯器,和普通使用的tc,vc都有所不同,建議大家使用devc 作為ide,或者用tc和vc寫 提交前使用dev c 編譯,預防編譯錯誤。提交c語言 最好使用g g 相容c和c c的 可以用gcc也可用g 提交,而c 的 不能夠用gcc提交,只能用g 2 g 包含庫的時...

如何檢測編譯器的大小端

大端模式 所謂的大端模式,是指資料的高位,儲存在記憶體的低位址中,而資料的低位,儲存在記憶體的高位址中,這樣的儲存模式有點兒類似於把資料當作字串順序處理 位址由小向大增加,而資料從高位往低位放 小端模式 所謂的小端模式,是指資料的高位儲存在記憶體的高位址中,而數 據的低位儲存在記憶體的低位址中,這種...

DOS下如何使用c c 的編譯器

對於初學c c 的人,我建議最好在使用dos 環境下的編譯器,這樣不至於在gui的環境 比如vc bcb 裡給弄糊塗了。那麼在dos環境下如何使用c c 的編譯器了,其實很簡單,下面用vc為例 首先你告訴lib和include在什麼地方,在就告訴編譯的程式在什麼地方,這樣我們可以在任何目錄下都可以使...