程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 利用IDE編寫C語言程序的一點注意事項,ide編寫c語言程序

利用IDE編寫C語言程序的一點注意事項,ide編寫c語言程序

編輯:關於C語言

利用IDE編寫C語言程序的一點注意事項,ide編寫c語言程序


  前言:我是喜歡編程的一只菜鳥,在自學過程中,對遇到的一些問題和困惑,有時雖有一點體會感悟,但時間一長就會淡忘,很不利於知識的積累。因此,想通過博客園這個平台,一來記錄自己的學習體會,二來便於向眾多高手請教。

 

  最近學習C語言,主要使用C-Free進行編寫。在學習過程中發現,書中提示C語言必須要遵循某種寫法,但是奇怪的是,不按照這種寫法卻也能通過編譯。

  如以下代碼:

 1 #include <stdio.h>
 2 
 3 struct point /*定義結構體*/
 4 {
 5     int x;
 6     int y;
 7 }; 
 8 
 9 int main(int argc, char *argv[])
10 {
11     struct point A;
12     A.x = 2;
13     A.y = 3;
14     printf("A點坐標為:[%d, %d]\n", A.x, A.y);
15     return 0;
16 }

  按書中所講:第11行必須寫成struct point A,而不能寫成 point A。但實際卻能順利通過編譯,後來又用VC++ 6.0進行測試,仍然通過編譯。因為是同時看兩本書自學,兩本書上都這樣寫,我相信書上的應該是正確的。經過多次嘗試,發現是默認文件擴展名的問題。

  C-Free和VC++ 6.0是根據源文件擴展名來編譯的。如果源文件擴展名為.c,則視為C語言源文件進行編譯;如果源文件擴展名為.cpp,則視為C++源文件進行編譯。C-Free和VC++ 6.0默認的源文件擴展名都是.cpp,編譯器視為C++源文件進行編譯,而C++允許在聲明結構體時省略關鍵字struct,所以就能順利通過編譯。

  如果保存時將源文件擴展名改為.c,或者修改默認擴展名,就會視為C語言源文件進行編譯。因C語言不允許省略關鍵字struct,故編譯時會提示錯誤。所以,在學習C語言時,應將IDE的默認擴展名設置為.c,或者先保存為.c文件再進行編譯,以避免造成不必要的困惑。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved