vc和c語言的區別
Ⅰ c語言和VC有什麼區別
VC是開發工具,可以用來開發C,C++,Window程序等
除了VC,你還可以用gcc,Borland C++ 等開發工具來學習C
而C是一種程序設計語言,不管你用什麼開發工具,它是有標準的
Ⅱ 怎樣才能學會編程VC和C有什麼區別
首先VC是一個軟體(IDE集成開發環境)(編譯、編輯、調試)
C和C++。但C++中的有些特性是不用的,例如I/O流,多態繼承
WindowsSDK(軟體開發工具)
VC的靈魂:MFC(微軟基礎類庫)
ATL(ActiveX模板類庫)
其他的SDK,如OpenGL,DirectX,ActiveMoive,DrawDib(WinG)
VC是許許多多技術的綜合,就好像少林72般絕技,一般在應用中學會其中很少一部分就夠了。我們的現在目的,其實不過是學一套少林長拳。這套長拳應包括:
1、養成一種嚴謹的軟體開發習慣,熟悉軟體工程的基本原則。
2、C語言基礎
3、C++最基本內容:類、繼承性、封裝性、多態性的概念
4、如何用向導建立一個程序框架
5、設計菜單
6、設計工具條
7、設計和使用對話框,熟悉最常用的對話框控制項:按鈕、靜態文本、編輯框等
8、知道怎樣新建類、成員函數、成員變數、消息處理函數。
9、了解最常用的Windows消息:如WM_PAINT(重繪窗口),滑鼠按下、彈起、移動,初始化對話框,等。
10、了解最簡單的GDI(圖形設備介面):寫文字、畫框、畫點、畫線、畫圓,設置畫筆、畫刷。
11、熟悉最常用的MFC類:
CWnd
CDocument
CView
CDC
CDialog
CWinApp
CGdiObject及子類
CString、CPoint、CRect、CSize等簡單數據類型
CFile
以上提到的這些內容,是每個人都會用到的內容。
二、MFC簡介
上述主要內容都是與實際操作關系非常密切的,在此不可能講清楚;而且,這些在一般的書里都會講到。我主要將最重要的MFC介紹一下。
MFC是對WindowsAPI的封裝,大大簡化了我們的工作;學VC主要就是要學MFC,大約有100多個類,但常用的也就二三十個。應該象背4級單詞一樣將這些常用類搞懂;當然不要死記,要通過看幫助、看例子、動手練習來學會它們;而且,並非每個類的內部的所有函數都要學會,要日積月累。如果真的想成為高手,做個筆記本把自己認為重要的類、函數記下來,隨時學習,也是很好的突擊方法。
下面介紹最重要的MFC。
CWnd:窗口,它是大多數「看得見的東西」的父類(Windows里幾乎所有看得見的東西都是一個窗口,大窗口裡有許多小窗口),比如視圖CView、框架窗口CFrameWnd、工具條CToolBar、對話框CDialog、按鈕CButton,etc;一個例外是菜單(CMenu)不是從窗口派生的。該類很大,一開始也不必學,知道就行了。
CDocument文檔,負責內存數據與磁碟的交互。最重要的是OnOpenDocument(讀入),OnSaveDocument(寫盤),Serialize(讀寫)
CView視圖,負責內存數據與用戶的交互。包括數據的顯示、用戶操作的響應(如菜單的選取、滑鼠的響應)。最重要的是OnDraw(重畫窗口),通常用CWnd::Invalidate()來啟動它。另外,它通過消息映射表處理菜單、工具條、快捷鍵和其他用戶消息。你自己的許多功能都要加在裡面,你打交道最多的就是它。
CDC設備文本。無論是顯示器還是列印機,都是畫圖給用戶看。這圖就抽象為CDC。CDC與其他GDI(圖形設備介面)一起,完成文字和圖形、圖像的顯示工作。把CDC想像成一張紙,每個窗口都有一個CDC相聯系,負責畫窗口。CDC有個常用子類CClientDC(窗口客戶區),畫圖通常通過CClientDC完成。
CDialog對話框
CWinApp應用程序類。似於C中的main函數,是程序執行的入口和管理者,負責程序建立、消滅,主窗口和文檔模板的建立。最常用函數InitInstance():初始化。
CGdiObject及子類,用於向設備文本畫圖。它們都需要在使用前選進DC。
CPen筆,畫線
CBrush刷子,填充
CFont字體,控制文字輸出的字體
CBitmap點陣圖
CPalette調色板
CRgn區域,指定一塊區域可以用於做特殊處理。
CFile文件。最重要的不外是Open(打開),Read(讀入),Write(寫)
CString字元串。封裝了C中的字元數組,非常實用。
CPoint點,就是(x,y)對
CRect矩形,就是(left,top,right,bottom)
CSize大小,就是(cx,cy)對(寬、高)
三、用好MSDN和例子
作為提高,推薦看的例子有:
nHello最簡單的程序框架
nScribble滑鼠繪圖。教程:編程基礎,GDI
nDiblook圖像處理最簡單範例
nMFCIE網際網路瀏覽器
nEnroll資料庫
nDaoviewDao(數據訪問對象)範例。樹型和列視控制項
nCubeOpenGL範例,畫一個不斷旋轉的方塊
nHierSvrOLE伺服器
nOclientOLE包容器
nDrawcli滑鼠繪圖。也包括OLE。
nWordPad寫字板。OLE
四、幾點經驗
A.為什麼要用Windows而不是DOS編程
Windows編程並不比DOS編程難很多,只是在剛剛接觸的時候感到頭緒繁多,不知從何下手。實際上,如果你會C語言,你會發現Windows編程的難度並不比當年學C語言時大。DOS編程要想成為高手,也需要學習幾百個函數(無論是TC、BC、MicrosoftC),並要深入了解匯編語言級的DOS功能調用。而現在在Windows下,付出相同的工作量,你卻可以獲得幾倍的收益。如果你以前熟悉DOS編程,現在再搞Windows編程,只要兩個星期肯定會感到巨大的優越性:在DOS下,每一件事都要自己干,而且還有64K內存、顯示精度等的限制,實在是事倍功半了。
B.為什麼要用VC而不是其他Windows編程語言
n大多數大型軟體(包括Windows自己)都是用C、C++編的,所以可以利用的源代碼特別多。例如Photoshop,就有VC的編程介面。的其他的語言都不如VC有歷史優勢。而且VC的開發工具特別多,從控制項公司到硬體開發商,其產品很少敢不提供VC介面的。
nVC適合組織大工程(VB就不行)
nBorlandC++或C++Builder也很不錯,並不比VC差。但BC的版本兼容性不好,從3.1到4.0就出現「代溝」,而且VC提供了極為豐富的文檔和範例,VC的參考資料也遠比BC多。並且VC與其他的VisualStudio成員可以協調工作,對軟體工程有利。
學習VC,千萬不要用我們在學校里學英語的方法,而要用小孩學說話的方法。所謂學英語的方法,就是我們在本科時學C語言的那種模式:詳細搞懂每一個細節,背大量的規則,很少上機實踐,沒有實際問題供解決,最後由考試來斷定學習成果。這種模式的後果大家都清楚:我們學了十幾年英語,可有不少人還只會四五千個單詞,寫百把字的文章,不會說,不能聽;尤其要命的是,看不懂VC的幫助文檔。我們要象嬰兒一樣,在使用中學會語法、修辭和詞彙;一開始肯定只能編出最糟糕的,就好像小孩開始只會說:「爸爸坐車車」;但「爸爸」「車車」這些詞對小孩是最需要的,學習的效率反而最高。學VC的時候,應從我的需要出發,先做一個最簡單的東西,然後一點一點復雜起來,象滾雪球一樣。
學習VC尤其要和別人交流,你苦苦思考不明白的,也許別人早就解決了。一定要善於學習:從書店找出有用的書;向身邊的高手學習;尋找可以利用的源代碼、類庫、組件、控制項、庫;如果能上互連網,那就更加能解決問題了。
Ⅲ VC++與C++有什麼區別和聯系
C++是在C語言的基礎上加入了「類」的概念以及「對象」的概念,所以C++是面向對象的編程語言。
而VC++是在C++的基礎上加入了對windows可視化(窗口化以及控制項)操作的支持,所以它也是面向對象的編程語言,是一種協助用戶使用c++語言設計軟體的工具。
所以學習VC++之前要學習C++。
學習階段:
首先要做的是通過C/C++語言的學習培養編程思維和動手能力,深刻理解面向過程和面向對象的思想方法。這個階段你需要學習:
① C語言
數據類型、變數、內存布局、指針基礎;
字元串、一維數組、二維數組;
一級指針,二級指針,三級指針,N級指針概念,指針數組和數組指針;
結構體、文件的使用;
動態庫的封裝和設計;
函數指針回調函數。
② C++語言
面向對象編程思想;
類的封裝,構造和析構、靜態成員、對象管理;
類的構造(有參構造函數、無參構造、拷貝構造、默認構造函數)和析構;
對象動態管理、友元函數、友元類、操作符重載;
C++編譯器對象管理模型分析;
類對象的動態管理(new/delete);
友元函數和友元類;
運算符重載(一元運算符、二元運算符、運算符重載難點、項目開發中的運算符重載);
類的繼承、多繼承及其二義性、虛繼承;
多態(概念、意義、原理剖析、多態案例);
虛函數、純虛函數、抽象類(面向抽象類編程思想案例);
函數模板、類模板,模板的繼承;
C++類型轉換;
C++輸入輸出流(標准I/O 文件I/O 字元流I/O);
C++異常處理(異常機制、異常類型、異常變數、異常層次結構、標准異常庫);
(3)vc和c語言的區別擴展閱讀:
C++是C語言的繼承,它既可以進行C語言的過程化程序設計,又可以進行以抽象數據類型為特點的基於對象的程序設計,還可以進行以繼承和多態為特點的面向對象的程序設計。C++擅長面向對象程序設計的同時,還可以進行基於過程的程序設計,因而C++就適應的問題規模而論,大小由之。
C++不僅擁有計算機高效運行的實用性特徵,同時還致力於提高大規模程序的編程質量與程序設計語言的問題描述能力。
Ⅳ vc編程和c語言編程有何區別具體點,謝謝哈
首先VC是一個軟體(IDE集成開發環境)(編譯、編輯、調試)
C和C++。但C++中的有些特性是不用的,例如I/O流,多態繼承
WindowsSDK(軟體開發工具)
VC的靈魂:MFC(微軟基礎類庫)
ATL(ActiveX模板類庫)
其他的SDK,如OpenGL,DirectX,ActiveMoive,DrawDib(WinG)
C語言是一種計算機程序設計語言。它既有高級語言的特點,又具有匯編語言的特點。它可以作為系統設計語言,編寫工作系統應用程序,也可以作為應用程序設計語言,編寫不依賴計算機硬體的應用程序。因此,它的應用范圍廣泛。
C語言對操作系統和系統使用程序以及需要對硬體進行操作的場合,用C語言明顯優於其它解釋型高級語言,有一些大型應用軟體也是用C語言編寫的。
C語言具有繪圖能力強,可移植性,並具備很強的數據處理能力,因此適於編寫系統軟體,三維,二維圖形和動畫。它是數值計算的高級語言。
常用的C語言IDE(集成開發環境)有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++ ,Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++ ,Lccwin32 C Compiler 3.1,Microsoft C,High C,Turbo C等等......
Ⅳ C語言 C++和VC VC++什麼區別
C語言、C++、VC、VC++的區別如下:
1、C語言:
一門計算機語言,用於人與計算機溝通。
2、C++:
一門計算機語言,用於人與計算機溝通,比C更強大。
3、VC和VC++可以看成一個東西,VC++是指一個IDE。
Ⅵ VC和C 有什麼不同
VC是微軟公司的一種開發軟體,是一個C語言的開發平台;C是指C語言,是一種高級編程的語言。圍繞C語言,很多公司開發了不同的平台給開發人員使用,並非只有VC一個。
Ⅶ vc是什麼語言 跟c語言 c++的區別
vc,全稱為Microsoft Visual C++,Microsoft Visual C++(簡稱Visual C++、MSVC、VC++6.0或VC6.0)是Microsoft公司推出的以C++語言為基礎的開發Windows環境程序,面向對象的可視化集成編程系統。
一、性質不同
1、Visual C++:Microsoft Visual C++(簡稱Visual C++、MSVC、VC++6.0或VC6.0)是Microsoft公司推出的以C++語言為基礎的開發Windows環境程序,面向對象的可視化集成編程系統。
2、C++:C++是C語言的繼承,進行C語言的過程化程序設計。
二、作用不同
1、Visual C++:適合用來編寫各種復雜軟體。
2、C++:可以進行以抽象數據類型為特點的基於對象的程序設計,還可以進行以繼承和多態為特點的面向對象的程序設計。
三、特點不同
1、Visual C++:有高級語言簡單易用的特性,又可以完成匯編語言才能做的許多工作。
2、C++:支持數據封裝和數據隱藏;支持繼承和重用;支持多態性。
Ⅷ c語言和vc++有什麼區別
本菜鳥認為:C語言是一門編程語言,VC++是微軟出的一門可視化編程語言,VC++借用了大量C語言的語法,並且微軟提供的編譯器是可以編譯C語言的程序。且VC++也借用了C++大量的編程思想,也就是這些。
Ⅸ VC和VB,還有C語言有什麼區別
主要區別如下:
一、VB和VC屬於面向對象編程語言,C語言屬於面向過程編程語言。
二、VB屬於解釋執行,是一句一句翻譯成指令執行的,執行速度比C語言和VC要慢,C語言和VC都是編譯成目標文件再執行的。
三、C語言和VC適合底層開發(就是更接近硬體層),而VB不適合做低層開發。
四、用處
1、vc適用於需要效率高的,偏向於計算的,大型的,復雜的,商用的程序。
2、vb適用於投資小的,功能簡單的,自用的程序的設計。
3、C語言具有繪圖能力強,可移植性,並具備很強的數據處理能力,因此適於編寫系統軟體,三維,二維圖形和動畫。它是數值計算的高級語言。
(9)vc和c語言的區別擴展閱讀:
1、Visual Basic是一種由微軟公司開發的包含協助開發環境的事件驅動編程語言。從任何標准來說,VB都是世界上使用人數最多的語言——不僅是盛贊VB的開發者還是抱怨VB的開發者的數量。它源自於BASIC編程語言。
VB擁有圖形用戶界面(GUI)和快速應用程序開發(RAD)系統,可以輕易的使用DAO、RDO、ADO連接資料庫,或者輕松的創建ActiveX控制項。程序員可以輕松的使用VB提供的組件快速建立一個應用程序。
2、MicrosoftVisual C++,(簡稱Visual C++、MSVC、VC++或VC)微軟公司的C++開發工具,具有集成開發環境,可提供編輯C語言,C++以及C++/CLI等編程語言。VC++整合了便利的除錯工具,特別是整合了微軟視窗程式設計(Windows API)、三維動畫DirectX API,Microsoft .NET框架。
3、C語言是一門通用計算機編程語言,廣泛應用於底層開發。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
Ⅹ C語言和VC是什麼意思
VC是一個開發工具 他是連接語言與操作系統的工具 學起來有點難度
它是可視化的c語言編輯環境,想學VC的話當然一定要先學會C++,否者的話你是學不通的.如果時間有限,可以不用專門學C,因為學C++的過程中你會同時了解到一些C的知識,但最好還是要熟悉C,基礎打好了,房子才能建得高.急功近利未見得好.
可以這么說吧:
visual studio(vs)是微軟提供的開發環境
在vs上寫c程序稱vc
在vs上寫c++程序稱vc++
C語言與VC++的區別有很多:
1,全新的程序程序思維,C語言是面向過程的,而VC++是面向對象的。
2,C語言有標準的函數庫,它們鬆散的,只是把功能相同的函數放在一個頭文件中;而VC++對於大多數的函數都是有集成的很緊密,特別是C語言中沒有的VC++6.0中的API是對Window系統的大多數API有機的組合,是一個集體。但你也可能單獨調用API。
3,特別是VC++中的圖形處理,它和語言的圖形有很大的區別。C語言中的圖形處理函數基本上是不能用在中VC++中的。主持人註:C語言標准中不包括圖形處理。這里的C語言的圖形處理指的是DOS下的C語言。
4,C和VC++中都有結構的概念,但是在C語言中結構只有成員變數,而沒成員方法,而在VC++中結構中,它可以有自己的成員變數和成員函數。但是在C語言中結構的成員是公共的,什麼想訪問它的都可以訪問;而在VC++中它沒有加限定符的為私有的。
4,C語言可以寫很多方面的程序,但是VC++可以寫得更多更好,VC++可以寫基於DOSr程序,寫DLL,寫控制項,寫系統。
5,C語言對程序的文件的組織是鬆散的,幾乎是全要程序處理;而vc++對文件的組織是以工程,各文件分類明確。
6,VC++中的IDE很智能,和VB一樣,有的功能可能比VB還強。
7,VC++對可以自動生成你想要的程序結構使你可以省了很多時間。有很多可用的工具如加入MFC中的類的時候,加入變數的時候等等。
8,VC++中的附加工具也有很多,可以進行系統的分析,可以查看API;可以查看控制項。
9,調試功能強大,並且方法多樣。