C语言学习趣事_你不知道的C语言应用
一、引
? ? ? ?我一直不明白“文人相輕”是什么意思,也許就是說:文人清客之間互相瞧不起的事情吧。但對于我來說,文人相輕就是表示:無知者無畏。
無論你的某一方面的語言學的怎么樣,怎么樣的牛逼,你可以眼光狹窄,你可以只看到你專注的領域,但是你不可以心胸狹窄;眼光狹窄的你
可以專注某一個領域,你一樣可以成為大家;但是如果你心胸狹窄的話,就算成為大家,也不會是一個令人欽佩的大家。
? ? ?我是一個學自動化的,對于計算機科學有著獨特的愛好,或者說是對可以自己創造東西有著特殊的愛好,因為學計算機編程可以不需要很多的
硬件設施就可以看到自己創造的東西;而從事自動化,雖然也編程,但是如果沒有一些特殊的硬件,編寫的程序基本也就沒有任何用處,基本上
沒有人會在自己家里裝一個PLC什么的來實現自動控制, 當然如果你認為需要,你也可以自己這么搞;但是計算機就不一樣,現在很多的家庭都有
自己的計算機,尤其是手機更是普及的一塌糊涂。
我一直在各大論壇潛水,比方說Chinaunix、CSDN、51CTO、Itlab之類的,經常可以看到linux和win陣營的人互相開罵,還有就是各種語言之
爭,經常可以看到C語言的使用者詬病C ,同樣也可以看到C 的使用者詬病C,各種Javaer和C#er們互相開罵,反正就是很多這樣類似的事情。
感覺真是無聊。
很多時候,很多人都瞧不起VB的使用者,但是VB的應用場合真的是很廣,我就從自動化的角度出發來說吧:
1、工業控制監控畫面
在西門子WinCC中有VBS腳本(還有今天要說的另一個腳本C腳本),WinCCFlexible中有VBS腳本, 在Intouch中有類似的C腳本,在Rockwell的
HMI畫面有VB腳本,同樣在霍尼韋爾的HMI中有類似的腳本;并且應用廣泛;
2、調試變頻器可以使用腳本, 這個比較復雜,需要對變頻器的運行參數非常了解,才能用腳本。DriverMonitor和DriverWindow都有自己的腳本,其他
的大體也有。
3、在數控中也可以使用VB腳本來控制系統,目前西門子大部分的數控系統使用的是Win體系的操作系統;也有用Linux的,不過不多,而且界面和操作習慣
已經改的和Win基本一樣了。
? ? ?我只能說:文人相輕就是無知者無畏。你可以有不同的性見,但是你不能強制別人接受你的性見;也許可以看看這本書《持不同性見者》,我還記得里面的
一句話: 玫瑰除了不是玫瑰,玫瑰可以是任何東西。這句話是說女人的,這本書也是寫女人的,里面有很多的有意思的詞語,比方說:女人的身體造反。
?
二、題
1、工控領域的C應用
很多IT人士,可能認為C語言只能在計算機、單片機之類的開發中應用,殊不知在工業控制領域C語言的開發也非常有潛力,在西門子的開發中C語言實在是
一個非常強有力的開發工具,比其他任何語言都具有優勢, 匯編快但是太復雜,C 勉強可以用,但是速度實在是慢,VB應用雖然廣泛,但是基本沒有也行,而
在一些控制運行時間在us(微秒)級的應用時,C似乎是唯一的選擇。
在Step 7中有單獨的C語言開發包,可以使用。 在熱軋、冷軋的一些開發過程中(比較高端的應用是TDC,稍微低一點的是S7400加工藝板開發),很多人用
C和STL(匯編級別)做過實驗(非大神級的人員,但是都是領域中的高手,對于大神來說語言不是問題),?用C開發的程序運行比STL運行更快,而且容易理解。雖然
實際開發應用中的TDC程序用CFC/SFC;S7程序用LAD/STL/FBD;但是很多精密和高速的控制用C開發成可以在CFC/SFC或者LAD/STL/FBD中可以使用的FC/FB
,然后再被調用; 這里當然可以用SCL,SCL的速度比LAD/STL/FBD快(SCL比STL快是因為編譯過程會優化邏輯,通常人的邏輯有時候會有一些瑣碎的無用的操作
C語言比STL快的原因大體也是這個)而實際上CFC/SFC是通過SCL編譯的(這里要插一句,SCL是一個類PASCAL的編譯器,使用的語言結構也是類Pascal的)。
在WinCC中可以用C開發腳本,用C開發的腳本比VBS的快,給大家看看圖:
上面就是一個典型的WinCC下C動作。接下來看一段C代碼:
大家有沒有感覺這寫個很熟悉啊
?
2、Matlab中的C開發
很多人也許聽說過matlab,或者使用過Matlab;但是我估計大部分人都不知道matlab其實還可以作為一個軟件開發工具來使用,可以開發圖形界面程序,
從本質來講Matlab是一個C語言的編譯器。
實際上在很多工業開發過程中,很多時候都可以用Matlab來仿真系統,比方說要模擬熱軋、冷軋輥的應力分析,通常是沒有這個硬件設施來讓人模擬的,這
個時候就可以做一個高階的數學模型進行模擬,從而產生想要的數據和圖形。
? ? ?下面上張圖給大家看看:
注意上圖最后一句: integrate with C ?C fortran ?com ?and ?java; ?集成C、C 、Fortran、com和Java。
其實在matlab中還有很多功能,比方說什么ls、dir、mkdir等一系列系統管理類的命令可以執行。
?
三、結語
當青蛙跳出井的時候,才會發現天地原來這么廣闊。
來源于網絡,如有侵權,告知必刪。
總結
以上是生活随笔為你收集整理的C语言学习趣事_你不知道的C语言应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑毒霸怎么卸载(电脑毒霸怎么卸载干净)
- 下一篇: 联想电脑系统驱动下载(联想电脑驱动器下载