1樓:free逍遙星空
程式設計:人通過某種方式命令計算機做一些動作,來得到人想要的結果,就叫程式設計。
比如開關燈,把燈看做計算機,按下按鈕,燈就開了,鬆開按鈕燈就關了,這樣也就達到了人向計算機下達指令的需求。在早期,計算機全是用開關來表示命令的,開關的閉合組合方式就叫程式設計,但這樣很麻煩,每次都要人操作。
所以出現了把人的指令放到某個儲存的地方,機器自己取並自己執行,人需要編寫01串的指令讓機器知道下達的命令(指令具體內容在機器設計的時候就規定了),所以這時候編寫01指令串就叫程式設計。(這時候人在紙條上打孔來表示這個串,機器讀紙條來知道這些命令)
但是這樣還是不方便01串容易弄糊塗,於是出現了彙編**,相當於給相應的01串做了個標記,比如0000的標籤是mov(代表mov這個動作,例子不是真的只是隨便舉的),這樣人就寫mov這樣的彙編**並讓乙個人做的工具把彙編**翻譯成01串就好了。這時候,編寫這些稱作彙編**的標記稱作程式設計。
彙編**還是太底層了,不好表達人的邏輯,於是繼續出現了b語言,c語言等一系列高階語言,人編寫這些語言的**,並用稱作編譯器的工具把這些東西翻譯成組合語言,再從組合語言翻譯成01串,計算機就可以執行了。這樣人通過高階語言,能夠更好的描述自己的想法,通過**描述想法(演算法)就是程式設計,演算法以資料結構為基礎。
之後,為了簡化程式設計出現了更加高階的語言,繼續封裝出模組,使人更好的描述思維,而不用關心底層機器的實現。發展趨勢是人只用說怎麼做,比如:給我在螢幕畫乙個圓,程式設計就好了,即程式設計傻瓜化。
所以,程式設計就是乙個廣義上的告訴機器所需執行的動作。至於考慮這個動作需要的東西,看你處於哪一層,越高層考慮的越少。
**:你告訴機器(計算機)動作方式的乙個集合。簡單說就是你告訴計算機執行動作的乙個動作序列。
比如:跑,然後蹲下,最後跳水裡。這就是**,而**編寫的方式由人做出來的翻譯工具(編譯器)決定。
源**:人剛剛編寫出來的動作序列,還沒有通過翻譯工具翻譯。
原始檔:儲存有源**的檔案。沒什麼好解釋的。以上。
c語言怎麼在乙個工程下建立兩個原始檔
2樓:
先建乙個工程 這個你應該會的吧 建立工程後點選project然後add然後file在彈出的對話方塊中寫檔名和字尾 然後勾選add tocurrent project 確定就可以了
3樓:匿名使用者
就是在乙個工程專案之中新增兩個文字檔案,再將其字尾改為.c就可以了的、
4樓:丿
首先建立完工程後,新建乙個檔案,可以命名為mian,表示主函式。
第二步:把主函式儲存,再新建乙個檔案,可以命名為此檔案功能名稱,然後儲存。
注意:乙個工程下也只有乙個mian函式,所以再新建其他的原始檔就不可以寫mian函式,否則編譯器會報錯。
5樓:匿名使用者
ide:新建檔案,然後把檔案加入工程。
linux:gcc的時候一起編譯進去就行了。有統一的makefile,就把檔案寫進makefile,什麼要生成的.o啦,源檔名啦,都給 它寫上,不就ok了
6樓:匿名使用者
只要共用的函式宣告為全域性的就可以了
7樓:喵不語
在新建乙個.c的檔案就好了!
c語言可以在不同的原始檔中定義相同名字的全域性變數嗎
8樓:山東路雲
拿vc試啊,剛花了幾分鐘實測了下,不加static,不管是否初始化,都是在鏈結的時候報重定義錯誤,如果加了static, 不管是否初始化,編譯鏈結都沒問題,只是不同的原始檔佔用不同的記憶體,也就是說已經是兩個不同的static全域性變數了。
9樓:
可以,因這個不是語法錯誤,一般是邏輯錯誤!而這種錯誤是看程式設計人員要怎麼使用變數的!
10樓:周生
全域性變數
既然是全域性的,你定義兩個怎麼辦?
11樓:空雪夢見
編譯會通過
鏈結會失敗
12樓:
不使用static的時候,兩個不同的原始檔都可以正常編譯,但會出現鏈結錯誤,原因是有兩個地方存在相同的變數,導致編譯器無法識別應該使用哪乙個。
另外,而使用static的時候,你所定義的static變數如果是區域性的話,編譯的時候編譯器會將其重新命名,其他檔案就不會使用到這個檔案的static變數了,這樣就使得只在本檔案內有效;如果是全域性的話,就全域性可見,共享同一塊記憶體空間。
具體細節請參考《c++反彙編與逆向分析》(錢林松),裡面講的很詳細。
如有疑問可以追加問題,歡迎採納,謝謝!
13樓:
可以啊!直接新增變數即可。
14樓:春秋幾許隨緣化
區域性的static變數(函式內部的)只是函式內部可見,全域性的static變數(函式外面的)應該是只有當前原始檔可見
如何將編寫好的c語言源程式變成可執行檔案exe?
15樓:藤閣美人
材料/工具:vc6.0
1、開啟c語言編輯工具,在工具中寫入程式的源**。
2、完成以後,點選編譯後點選組建,然後點選執行。
3、執行完程式,點選回車按鈕選項。
4、 點選檔案另存為把檔案存到你能夠找到的資料夾中5、開啟儲存在桌面的資料夾,裡面有有乙個 bebug 的資料夾。
6、開啟 bebug 的資料夾,有乙個以.exe為字尾名的檔案,就是所需要的可執行檔案,將其拷貝出,就可以單獨執行,也就是乙個小軟體生成了
16樓:彷彿感覺到恐慌
1、第一步,開啟c語言編譯軟體,輸入你要執行的程式源**,如下圖所示。
2、第二步,**編寫完成之後,依次點選」編譯「、」組建「、」執行「三個選項,也可以通過依此右邊的三個快捷鍵完成上述操作,如下圖所示。
3、第三步,上述操作完成之後,按」回車鍵「就可以執行當前程式了,如下圖所示。
4、第四步,程式執行成功,確認**無誤之後,單擊」檔案「->」另存為「,將檔案儲存到本地資料夾中,如下圖所示。
5、第五步,在本地資料夾中找到剛剛儲存的檔案,發現檔案已經儲存為乙個可執行檔案exe格式了,如下圖所示。
17樓:匿名使用者
1、第一步先開啟c語言編輯工具,然後在工具中寫入程式的源**。
2、填寫完之後,點選編譯後點選組建,然後點選執行。
3、執行完程式,然後再按回車鍵。
4、 然後在點選頁面左上角的「檔案」下的「另存為」,然後把檔案存到相應的資料夾中。
5、然後再從電腦上找到這個資料夾並開啟,然後從裡面找到乙個名稱為bebug的資料夾。
6、然後開啟此資料夾,可以從裡面看到有乙個以.exe為字尾名的檔案,這個就是所需要的可執行檔案,將其拷貝出,就可以單獨執行了,也就是乙個小軟體生成了。
18樓:王一是個好青年
1、開啟c語言編輯工具(vc6.0),寫入所程式設計序源**。
2、依次點選「組建-編譯-執行」。
3、執行完程式,點選回車。
4、點選「檔案另存為」把檔案存到你能夠找到的資料夾中,比如桌面。
5、開啟你剛儲存檔案的資料夾,內含有乙個「debug」的資料夾,注意:如果沒有,請再次執行第二步。
6、開啟「bebug」的資料夾,有乙個以「.exe」為字尾名的檔案,就是所需要的可執行檔案,將其拷貝出,就可以單獨執行,也就是乙個小軟體生成了。
c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。
儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平台的特性,以乙個標準規格寫出的c語言程式可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平台。
19樓:青春愛的舞姿
程式設計好的語言遠端變成可執行的檔案,1月11的話,就是要把這個編碼先寫好。
c語言如何將結果儲存在檔案裡面,新增**會要更改和影響我的源**嗎
20樓:莊政警
如果僅僅是將結果儲存在檔案裡,那不需要修改**,用系統的重定向功能就行:
假設你的**最終生成的可執行檔案為 t.exe那麼可以這樣:
t.exe > r.txt //這個命令就是將t的輸出結果儲存在r.txt這個檔案裡,原來的內容被清空
t.exe >> r.txt //這個命令就是將t的輸出結果追加到r.txt這個檔案裡
c語言程式設計檔案studenttt檔案中儲存有學生的信
你想對這個檔案幹什麼?讀資料到程式中?用c語言編寫一個通過鍵盤或檔案輸入學生資訊,並將學生資訊輸出到檔案和螢幕的程式 100 發,消,息給,你,了 c語言程式設計 將3個學生的資訊儲存到檔案stud.dat中,再從檔案中讀出顯示在螢幕上 include define n 3 struct stude...
如何學習C語言程式設計,如何學習c語言
如何學習c語言 學習c語言的方法如下 1 首先閱讀和理解現有的程式,一般是教材資料的程式,每個程式都必須親手打一遍。在輸入 的同時,一定要了解每乙個語句的意義和運算符號的意義。2 完成了第一階段的學習後,開始根據給定的源 進行簡單的修改,這個階段可以實現一點點自己的想法,同時也能將相關的語法掌握的更...
c語言如何在工程裡建立多個檔案?內詳
乙個工程只能有乙個main函式,但可以有多個檔案例如main.c定義 include stdio.h void main void 在另乙個檔案file2.c裡再定義一些函式void fun1 void fun2 然後把這兩個檔案都包涵到工程裡去一起編譯就可以了。如果你要從main函式裡呼叫file...