導航:首頁 > 編程語言 > vc編程指南

vc編程指南

發布時間:2023-01-03 12:40:04

① 老師讓用VC做MFC開發,我連C都還不會呢

初學的話不要看網路資源,往往會造成瞎逛的時間佔用了學習的時間。
編程最好的辦法就是拿著一本書,認真研讀、多多實踐。
現在大學里計算機專業用的比較多的書是清華大學出的《C程序設計》,譚浩強寫的。
這本書相比其他C語言書籍,比較通俗易懂,更加適合初學者看。
同時把裡面的程序都自己動手打出來,執行一下。

編程這個東西是要投入學習才能學會的,所以最好買本書,天天學習。
一般一兩個月會有所效果。
但是如果說道做開發的話,還是需要更長的時間的!

上一萬的代碼量表示你開始起步;
上十萬的代碼量表示你已經有點點能耐了。

當然一本書只是用來起步的
要想有所成績,一本書當然不夠
而且程序開發不僅僅是要學會語言,語言只是一種工具,只有工具,不會用,是不行的。
後續要學習的還有很多,比如數C++程序設計(這個應用比較廣泛)、據結構、離散數學……這些是最起碼的。
編譯原理、微機介面、計算機組成原理、操作系統……這些是可以幫助你提高整體水平和整體思維的。

呵呵,道路是曲折的,前途是光明的。

② VC 源代碼學習

vc源代碼:http://sites.google.com/site/qiujiejia1/Home/VC_SourceCode.zip

通用控制項使用詳解: http://sites.google.com/site/qiujiejia1/Home/通用控制項使用詳解.zip

CSDN VC編程經驗總結:http://sites.google.com/site/qiujiejia1/Home/CSDN_VC編程經驗總結.zip

vc++ 編程指南 :http://sites.google.com/site/qiujiejia1/Home/vc++編程指南.zip

MFC問答 : http://sites.google.com/site/qiujiejia1/Home/MFC問答.zip

MFC教程
下載地址:http://cid-3ba16e78a53d2d3d.skydrive.live.com/self.aspx/ShareData/MFC%e6%95%99%e7%a8%8b.rar

建議你看看孫鑫的視頻教程,這樣學習起來沒那麼吃力。
下載地址:http://www.verycd.com/topics/35626/

最後希望你在學習VC++和MFC編程前先學習win32編程,這樣不至於到後來學習不下去。個人意見,僅供參考。

③ C語言編程書籍

1.《C程序設計》 譚浩強 清華大學出版社
目前最新版本是第三版

配套的習題解答:《C程序設計題解與上機指導》

高質量C++/C編程指南
http://www.codeguru.cn/CPP/AdvanceC++-CProgramGuide/
應用C++技術構建優質軟體
http://www.codeguru.cn/CPP/AppliedCpp/
C++編碼規范與指導
http://www.codeguru.cn/CPP/C++CodingGuide/
C++PrimerPlus4th
http://www.codeguru.cn/CPP/C++PrimerPlus4th/
C語言函數示例集
http://www.codeguru.cn/CPP/CFunctionExamples/

C語言技術文章
http://www.codeguru.cn/CPP/CLanguageArticle/
C++疑難解答
http://www.codeguru.cn/CPP/CppAQ/
C++實踐之路
http://www.codeguru.cn/CPP/CppInAction/
C++應用程序例解
http://www.codeguru.cn/CPP/CppProgramLiJie/
C++參考
http://www.codeguru.cn/CPP/cppreference/
C語言編程寶典之一
http://www.codeguru.cn/CPP/Cprogramdict/
C語言學習和精華文摘
http://www.codeguru.cn/CPP/CStudyAndArticle/
Effective C++
http://www.codeguru.cn/CPP/EffectiveCpp/
GenericProgramming
http://www.codeguru.cn/CPP/GenericProgramming/
TheCprogrammingLanguage
http://www.codeguru.cn/CPP/TheCprogrammingLanguage/

用VC開發ACTIVEX
http://www.codeguru.cn/VC&MFC/ActiveXProgramingWithVC/
用DirctX9進行高級3D游戲程序設計
http://www.codeguru.cn/VC&MFC//
21天學會VC資料庫編程
http://www.codeguru.cn/VC&MFC//
STL輕松入門
http://www.codeguru.cn/VC&MFC/EasySTL/
COM+組件服務技術內幕
http://www.codeguru.cn/VC&MFC/InsideCOM+/
OGRE手冊
http://www.codeguru.cn/VC&MFC/OGREManual/
OpenGL基礎圖形編程
http://www.codeguru.cn/VC&MFC/OpenGLJiChuTuXingBianCheng/
MFC程序設計
http://www.codeguru.cn/VC&MFC/progmfc2/
VC技術內幕
http://www.codeguru.cn/VC&MFC/ProgramingVC/
Windows核心編程
http://www.codeguru.cn/VC&MFC//
VC編程經驗總結
http://www.codeguru.cn/VC&MFC/VCBianChengJianYanZongJie/
VC編程資料
http://www.codeguru.cn/VC&MFC/VCBianChengZiliao/
VC高級編程
http://www.codeguru.cn/VC&MFC/VCGaoJiBianCheng/
vchome圖形圖像編程技術篇
http://www.codeguru.cn/VC&MFC/vchomeGraph/
VC知識庫
http://www.codeguru.cn/VC&MFC/vckbase/
vc++ 編程指南
http://www.codeguru.cn/VC&MFC/VCProgramGuide/
Windows程序設計
http://www.codeguru.cn/VC&MFC/WindowsProgramming/
Winsock程序員疑難解答
http://www.codeguru.cn/VC&MFC/WinsockProgrammerFAQ/
Microsoft編程精粹
http://www.codeguru.cn/VC&MFC/WritingCleanCode/

④ Microsoft Visual C++ 6.0的使用指南

中國IT實驗室 www. chinaitlab .com 很多計算機相關書籍 喜歡的朋友可以去瞧瞧;(不過頂一下再走,呵呵) 給出部分書的名稱: 精通Visual C++圖像編程 MFC中文幫助 MFC程序員的WTL指南 VC6從入門到精通-開發者眼中的VC VC6從入門到精通-附錄 MS VC++6.0程序員指南 VC6從入門到精通-基礎篇 VC6從入門到精通-VC與INTERNET Visual C++ 使用指南 Visual C++知識庫 Visual C++ MFC入門教程 Visual C++ 6 參考大全 跟我學 VISUAL C++ 6.0 Visual C++ 6.0語言參考手冊 Visual Lisp開發人員手冊 Visual C++ 從入門到精通 Visual J++ 6.0 WFC 類庫手冊 Visual InterDev 從入門到精通 Visual C++ 6.0用戶開發手冊 VC編程指南 VC++6.0 類庫參考手冊 VC++database編程大全 VC6.0 運行庫參考手冊 Visual C++6.0運行庫參考手冊 VC++6.0模板庫手冊 VC++面向對象入門 VC新手學堂 Visual C++ 6.0預處理器參考手冊 VC5.0開發人員參考手冊 VC6中文版程序員開發指南 Visual J++ 6.0 WFC類庫參考手冊一 VC6 模板庫參考手冊 VC++編程指南 Visual J++ 6.0 WFC類庫參考手冊二 VC6.0 MFC類庫參考手冊 VC6從入門到精通-VC與資料庫管理 MS VC++ 6.0 MFC類庫參考手冊 一 MS VC++ 6.0 MFC類庫參考手冊 二 走進Visual C++ 實例篇 Visual C++ 實踐與提高-圖形圖像編程篇 Visual C++ 數字圖像處理 VC-MFC編程實例 Visual C++實踐與提高_環境剖析IDE篇 Visual C++程序設計:基礎與實例分析 Visual C++ 6.0實例 Visual C++課程設計案例精編 Visual C++ 6.0開發與實例 VISUAL C++擴展編程實例 Visual C++6.0高級編程技巧與實例 VC++擴展編程實例 Visual C++編程技巧與範例 戰勝Visual C++必做練習50題 Visual C++6.0編程與實例解析 VC-MFC擴展編程實例 MFC資源大全 精通Visual C++ 6.0 Visual C++程序模塊集錦 Visual C++_Turbo C串口通信編程 Visual C++ 6.0應用編程150例 Visual C++ 6.0實例教程電子教案 教程篇 MFC Windows程序設計 Visual C++網路通信協議分析 VC6.0資料庫編程 Visual C++ 學習教程 Visual_C++_新起點—6.0實用教程 Visual C++ 6-24學時學習教程 Visual C++ 6.0 21天自學教程 VC++網路教程 Visual C++ MFC 簡明教程 VC 資料庫編程三部教學 Visual C++ 6.0 資料庫編程大全 VC新手學堂簡明教程 Visual C++ 6.0 開發寶典 Visual C++ 6.0 教程 Visual C++ 6.0 高級編程 VC++6.0培訓教程 Visual J++ 6.0 即學即用 Visual C++與面向對象程序設計教程 Visual C++6.0高級開發教程 Visual C++.NET 寶典 Visual C++5.0 程序設計 技術與應用 VC++6.0 用戶界面製作技術與應用實例 深入淺出WINDOWS MFC程序設計 Visual C++ 角色扮演游戲程序 Visual C++6.0程序設計提高篇 VC++編程資料 VC++ 函數經典 VC++與Matlab混合編程的快速實現 Visual C++ 5.0易學活用 VISUAL C++ 設計WIN32應用程序 Visual C++入門與應用 Visual C++6.0開發寶典 Visual C++6.0技術內幕 VC++6編程方法 深入VC編程內幕 VC編程經驗總結 用VC++編寫USB介面通信程序 用VC開發CGI 瘋狂VC技巧集 VC6開發寶典 Visual C++經典 Visual C++ 6 輕松進階 VC編程常用捷徑 MFC技術內幕 VC深入編程

求採納

⑤ 我想成為C++編程高手,該學什麼課程

1、《計算機組成原理》(熟悉)
2、《數據結構》(掌握)
3、《操作系統》(了解->熟悉)
4、《C語言程序設計》(掌握)
5、《編譯原理》(了解原理)
6、《匯編語言》(了解)
7、《計算機網路》(了解)
8、《軟體工程》(了解)
9、《關系資料庫》(熟悉)
10、《The C++Languege 》(掌握)
11、《面向對象設計》(掌握;結合C++學習)

window程序設計
深入淺出MFC

⑥ Microsoft Visual C++ 6.0的使用指南

中國IT實驗室 www. chinaitlab .com 很多計算機相關書籍 喜歡的朋友可以去瞧瞧;(不過頂一下再走,呵呵)

給出部分書的名稱:

精通Visual C++圖像編程 MFC中文幫助 MFC程序員的WTL指南
VC6從入門到精通-開發者眼中的VC VC6從入門到精通-附錄 MS VC++6.0程序員指南
VC6從入門到精通-基礎篇 VC6從入門到精通-VC與INTERNET Visual C++ 使用指南
Visual C++知識庫 Visual C++ MFC入門教程 Visual C++ 6 參考大全
跟我學 VISUAL C++ 6.0 Visual C++ 6.0語言參考手冊 Visual Lisp開發人員手冊
Visual C++ 從入門到精通 Visual J++ 6.0 WFC 類庫手冊 Visual InterDev 從入門到精通
Visual C++ 6.0用戶開發手冊 VC編程指南 VC++6.0 類庫參考手冊
VC++database編程大全 VC6.0 運行庫參考手冊 Visual C++6.0運行庫參考手冊
VC++6.0模板庫手冊 VC++面向對象入門 VC新手學堂
Visual C++ 6.0預處理器參考手冊 VC5.0開發人員參考手冊 VC6中文版程序員開發指南
Visual J++ 6.0 WFC類庫參考手冊一 VC6 模板庫參考手冊 VC++編程指南
Visual J++ 6.0 WFC類庫參考手冊二 VC6.0 MFC類庫參考手冊 VC6從入門到精通-VC與資料庫管理
MS VC++ 6.0 MFC類庫參考手冊 一 MS VC++ 6.0 MFC類庫參考手冊 二 走進Visual C++
實例篇
Visual C++ 實踐與提高-圖形圖像編程篇 Visual C++ 數字圖像處理 VC-MFC編程實例
Visual C++實踐與提高_環境剖析IDE篇 Visual C++程序設計:基礎與實例分析 Visual C++ 6.0實例
Visual C++課程設計案例精編 Visual C++ 6.0開發與實例 VISUAL C++擴展編程實例
Visual C++6.0高級編程技巧與實例 VC++擴展編程實例 Visual C++編程技巧與範例
戰勝Visual C++必做練習50題 Visual C++6.0編程與實例解析 VC-MFC擴展編程實例
MFC資源大全 精通Visual C++ 6.0 Visual C++程序模塊集錦
Visual C++_Turbo C串口通信編程 Visual C++ 6.0應用編程150例 Visual C++ 6.0實例教程電子教案
教程篇
MFC Windows程序設計 Visual C++網路通信協議分析 VC6.0資料庫編程
Visual C++ 學習教程 Visual_C++_新起點—6.0實用教程 Visual C++ 6-24學時學習教程
Visual C++ 6.0 21天自學教程 VC++網路教程 Visual C++ MFC 簡明教程
VC 資料庫編程三部教學 Visual C++ 6.0 資料庫編程大全 VC新手學堂簡明教程
Visual C++ 6.0 開發寶典 Visual C++ 6.0 教程 Visual C++ 6.0 高級編程
VC++6.0培訓教程 Visual J++ 6.0 即學即用 Visual C++與面向對象程序設計教程
Visual C++6.0高級開發教程 Visual C++.NET 寶典 Visual C++5.0 程序設計
技術與應用
VC++6.0 用戶界面製作技術與應用實例 深入淺出WINDOWS MFC程序設計 Visual C++ 角色扮演游戲程序
Visual C++6.0程序設計提高篇 VC++編程資料 VC++ 函數經典
VC++與Matlab混合編程的快速實現 Visual C++ 5.0易學活用 VISUAL C++ 設計WIN32應用程序
Visual C++入門與應用 Visual C++6.0開發寶典 Visual C++6.0技術內幕
VC++6編程方法 深入VC編程內幕 VC編程經驗總結
用VC++編寫USB介面通信程序 用VC開發CGI 瘋狂VC技巧集
VC6開發寶典 Visual C++經典 Visual C++ 6 輕松進階
VC編程常用捷徑 MFC技術內幕 VC深入編程

⑦ vc++6.0操作方法

VC++6.0上機操作指南

貴州大學計算機科學與技術學院
張志明
2006年9月

目錄
1. Visual C++ 控制台應用程序上機實現步驟
2. MFC對話框應用程序實現舉例
3. MFC單文檔應用程序實現舉例
4. 用32位調試程序了解類和對象的內存映象

1. Visual C++控制台應用程序(Win32 Console Application Project)
上機實現步驟

一. 單文件程序的實現
本教材中的程序在Visual C++環境下都是以Win32 Console Application 項目實現,而且都是單文件程序,即只含有一個源程序(.cpp)文件的C++程序。
一個單文件程序在Visual C++ IDE中的實現主要步驟是:(1)建立新項目(2)建立新文件(3)輸入源代碼(4)編譯、連接,生成可執行程序文件。以上步驟均可在Visual C++的Wizard指導下通過對話框交互輸入完成。
1. 建立新項目:
每個C++程序的實現都要建立一個項目。所謂項目是一個文件生成過程的管理單位,項目名稱就是最後實現的可執行文件的名稱,一個項目就是與生成這個可執行程序文件相關的所有源文件和中間文件的集合,存放在以項目名稱命名的文件夾中。

圖1 Microsoft Visual C++ 6.0系統初始界面

執行菜單命令File>New,打開New對話框:

圖2 打開New對話框

在New對話框的Project選項卡中選擇Win32 Console Application選項,然後輸入項目存放位置項目名稱後確定。
圖3 輸入項目位置和名稱
在Win32 ConsoleApplication-Step 1 of 1對話框中選擇An empty project,完成後返回。系統彈出新建項目信息報告對話框。

圖4 Win32 ConsoleApplication-Step 1 of 1對話框

圖5 新建項目信息報告
2. 建立新文件:
再一次執行菜單命令File>New,打開New對話框,在File選項卡中選擇C++ Sourse File選項,然後輸入源程序文件名。完成後系統打開源程序(.cpp)文件編輯窗口。

圖6 在New對話框輸入源程序文件名
3. 輸入源代碼:
此時即可在源程序(.cpp)文件編輯窗口輸入源程序代碼。

圖7 源程序(.cpp)文件編輯窗口

4. 生成和運行可執行程序文件:
11從源程序文件生成可執行文件,需要經歷編譯,連接兩步,在VC++6.0編程環境中可以有以下幾種操作方式:
(1)打開Build (編譯)菜單,先執行Compile命令,接著再執行Build命令。
(2)打開Build (編譯)菜單,執行Rebuilde All命令。
(3)打開Build (編譯)菜單,直接發出Execute 執行命令,一次性完成編譯、連接和啟動程序執行的任務。
(4)直接單擊「!」(BuildExecute)命令按鈕,一次性完成編譯、連接和啟動程序執行的任務。

圖8 Build (編譯)菜單

圖9 程序運行結果

打開工程文件夾可以找到該工程的所有工作文件。

打開工程文件夾中的Debug子文件夾,可以找到生成的可執行(.exe)文件。

二. 多文件程序的實現
一個較大型C++程序,有時需要包含多個源程序文件。一種常見的情況是將類的定義放在頭(.h)文件中,將類的實現或對類的訪問放在源(.cpp)文件中。

多文件程序的實現與單文件程序的實現方式需要經歷同樣的步驟,不同的是,在編譯之前需要利用新建文件對話框逐一將所有需要的文件追加到項目中。
1. 建立新項目:

2. 建立新文件:
(1)加入和編輯頭文件:
在New對話框,在File選項卡中選擇C/C++ Header File選項,然後輸入頭文件名。完成後系統將打開源程序(.h)文件編輯窗口。

(2)加入和編輯源程序文件
打開New對話框,在File選項卡中選擇C++ Sourse File選項,然後輸入源程序文件名。完成後系統打開源程序(.cpp)文件編輯窗口。
注意:在源程序文件中應該用文件包含命令將頭文件包含進來。如下例源程序文件s719.cpp的第一行:#include"h719.h"

3. 生成和運行可執行程序文件:
步驟同單文件程序的生成和執行。

#

2.MFC對話框應用程序實現舉例
本指導書給出3個MFC對話框應用程序的實現實例,例1為求三科平均成績的簡單程序,例2為實現一個具有四則運算功能的簡單計算器,例3為一個彩票機程序(提供手動搖號和自動搖號兩個彩票機程序版本)。
通過這些程序可以達到以下目的:
掌握AppWizard的使用方法。
掌握Workshop中各種視圖的使用和在不同視圖之間切換的方法。
學會利用控制項工具箱中的控制項定製對話框界面。
學會控制項變數及其他類成員變數的設置。
學會消息映射的概念和操作方法。
學會查看和編輯代碼。
學習編譯、運行和調試對話框應用程序。

例1.實現一個求三科平均成績的MFC對話框應用程序。假設運行時的界面如下:

實現步驟:
1. 在Visual C++ 6.0工作開發環境中,New對話框中選擇MFC AppWizard [exe]項目,輸入項目名稱並指定存放位置。

2. 在MFC Wizard Step1選擇Dialog(基本對話)程序類型,在MFC Wizard Step2中輸入對話框標題「求平均成績」。

AppWizard對話結束後打開對話框編輯窗口如下:

3. 定製界面:添加控制項、設置屬性
刪除對話框模板中原有的「確定」按鈕和內容為「TODO: 在這里設置對話控制。」的Static Text控制項。
在控制項工具箱中取一個Group Box控制項,調整適當大小,滑鼠右鍵單擊該控制項邊框,在彈出的下拉菜單中打開屬性對話框。將Group Box控制項標題由「Static」改為「求平均分」。

在Group Box中添加4個Static Text控制項,按同樣方法修改它們的標題屬性為「成績1」、「成績2」、「成績3」和「平均分」。
在Group Box中添加4個Edit Box控制項,打開屬性對話框的Extended Styles選項卡中將它們設置為文本右對齊(Right Aligend Text)方式。其中第4 個Edit Box控制項的Styles屬性設置為Read-only。

在Group Box中添加一個按鈕Button1,打開屬性對話框將按鈕的標題屬性改為 「計算平均分」。
滑鼠右鍵單擊「取消」按鈕邊框,在彈出的下拉菜單中打開屬性對話框。將按鈕標題改為「退出」。

設計完成的界面如圖,其中控制項屬性列表如下:
控制項
ID號
標題
屬性
Group Box
IDC_STATIC
求平均分

Static Text
IDC_STATIC
成績1

Static Text
IDC_STATIC
成績2

Static Text
IDC_STATIC
成績3

Static Text
IDC_STATIC
平均分

Edit Box
IDC_EDIT1

Align text:Right
Edit Box
IDC_EDIT2

Align text:Right
Edit Box
IDC_EDIT3

Align text:Right
Edit Box
IDC_EDIT4

Align text:Right;Read-only
Button
IDC_BUTTON1
計算平均分

Button
IDCANCEL
退出

4. 添加成員變數
單擊View(查看)>ClassWizard(建立類向導)菜單進入ClassWizard,打開Member Variables選項卡:為4 個Edit Box控制項設置對應的變數:

同樣的方法為其它3個Edit Box控制項設置變數:
控制項ID
變數名
變數類型
數值范圍
IDC_EDIT1
m_S1
int
0~100
IDC_EDIT2
m_S2
int
0~100
IDC_EDIT3
m_S3
int
0~100
IDC_EDIT4
m_Sav
CString

5. 添加消息映射(兩條消息)
進入ClassWizard,打開Messages Maps選項卡,在Object Ids中選擇CAverageDlg,在Messages中滑鼠單擊WM_INIDIALOG,在Member functions中出現生成的消息映射成員函數OnInitDialog提示:

在Object Ids中選擇IDC_BUTTON1,在Messages中滑鼠單擊BN_CLIKED,在彈出對話框中單擊OK按鈕:在Member functions中出現第二個生成的消息映射成員函數OnButton1。

6. 添加代碼
在ClassWizard中雙擊OnInitDialog函數,打開代碼編輯器中的OnInitDialog()函數代碼,找到其中的 // TODO: Add extra initialization here,加入下面的黑體字給出的3行代碼:
BOOL CDlgDlg::OnInitDialog()
{
CDialog::OnInitDialog();
…;
// TODO: Add extra initialization here
m_Sav="0.00";
m_S1=m_S2=m_S3;
UpdateData(FALSE);
return TRUE; // return TRUE unless you set the focus to a control
}
在ClassWizard中雙擊OnButton1()函數,打開代碼編輯器中的OnButton1()函數代碼,找到其中的 // TODO: Add extra initialization here,加入下面的黑體字給出的4行代碼:
void CDlgDlg::OnButton1()
{
// TODO: Add extra initialization here
UpdateData();
double ave=(double)(m_S1+m_S2+m_S3)/3.0;
m_Sav.Format("%6.2f",ave);
UpdateData(FALSE);
}

7. 編譯運行程序:

注釋:
UpdateData()函數的作用是允許更新控制項變數,
UpdateData(FALSE) 禁止更新控制項變數的值。

例2.設計MFC對話框應用程序,實現一個具有四則運算功能的簡單計算器。

1. 新建項目:

2. 定製界面:
(1) 修改MFC AppWizard自動創建的對話框項目模板。刪除模板上自動創建的三個控制項。
(2) 加入「簡單計算器」、「請輸入數據:」、「結果」三個靜態文本框和相應的3個編輯框。
(3) 加入一個Group Box,標題修改為「請選擇運算符:」,並在其中放入4個Radio Button將標題分別改為「+」、「-」、「*」、「/」。
(4) 繼續用滑鼠從工具箱中向對話框添加和3個按鈕控制項,更改按鈕的標題為「計算」、「清除」、「關閉」。

3. 添加變數
本例中用到以下4個CSimpleCalcDlg類的成員變數:
變數類型
名稱
float
m_N1
float
m_N2
float
m_ Result
char
Operator

用ClassWizard為編輯框添加變數:m_N1, m_N2, m_Result

變數char Operator的添加方法:
在WorkSpace中進入ClassView視圖, 滑鼠右鍵單擊CSimpleCalcDlg, 在菜單中選擇「Add Member Variable…」

然後在彈出的對話框的輸入變數類型和名稱:

4. 添加消息映射
用ClassWizard為按鈕控制項添加消息映射:

繼續用ClassWizard為Radio Button控制項添加消息映射:

5. 加入單擊按鈕時的事件響應代碼
在實現文件(cpp文件)中加入單擊按鈕時的事件響應代碼。(雙擊一個按鈕可直接進入函數編輯)
//選擇運算符
void CSimpleCalcDlg::OnRadio1()
{ Operator='+'; }
void CSimpleCalcDlg::OnRadio2()
{ Operator='-'; }
void CSimpleCalcDlg::OnRadio3()
{ Operator='*'; }
void CSimpleCalcDlg::OnRadio4()
{ Operator='/'; }
//計算
void CSimpleCalcDlg::OnButton1()
{
UpdateData();
switch(Operator)
{
case '+':
m_Result=m_N1+m_N2;
break;
case '-':
m_Result=m_N1-m_N2;
break;
case '*':
m_Result=m_N1*m_N2;
break;
case '/':
if(m_N2 == 0 )
MessageBox("除數不能為零!");
else
{
m_Result = m_N1/m_N2;
break;
}
default:
m_Result=m_N1+m_N2;
}
UpdateData(FALSE);
}
//清除
void CSimpleCalcDlg::OnButton2()
{
UpdateData();
m_N1=0;
m_N2=0;
m_Result=0;
UpdateData(FALSE);
}
//關閉
void CSimpleCalcDlg::OnButton3()
{ CDialog::OnOK(); }
6. 編譯運行程序

例3. 彩票機程序:
本例給出手動搖號和自動搖號兩個彩票機程序版本。
1. 彩票機界面:
定製含有7個Edit Box 、1個Progress(進度條)和3偵探按鈕控制項的對話框界面如下:

2. 設置變數:
(1) 設置進度條變數:

(2) 設置7個編輯框變數:

(3)添加類成員變數m_x:

3. 消息映射:
在ClassWizard中產生OnInitDialog、OnButton1、OnButton2、OnOK四個消息映射函數:

4. 添加代碼:
//初始化
BOOL CLotusDlg::OnInitDialog()
{
CDialog::OnInitDialog();

……
// TODO: Add extra initialization here
m_x=0;
m_pProg.SetRange(0,70);
srand((unsigned)time(NULL));
return TRUE; // return TRUE unless you set the focus to a control
}
(一)手動搖號
//手動搖號,每按一次搖號按鈕出一個號
void CLotusDlg::OnButton1()
{
// TODO: Add your control notification handler code here

switch(m_x/10)
{
case 0:
m_N1=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 1:
m_N2=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 2:
m_N3=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 3:
m_N4=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 4:
m_N5=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 5:
m_N6=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 6:
m_N7=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
}
UpdateData(FALSE);
}
void CLotusDlg::OnButton2()
{
// TODO: Add your control notification handler code here
m_x=0;
m_N1=0;
m_N2=0;
m_N3=0;
m_N4=0;
m_N5=0;
m_N6=0;
m_N7=0;
UpdateData(FALSE);
m_pProg.SetPos(1);
}
void CLotusDlg::OnOK()
{
CDialog::OnOK();
}

(二)自動搖號
將前面實現的手動搖號程序修改為自動定時搖號。
添加OnTimer消息映射函數:

//按搖號按鈕啟動搖號
void CLotusDlg::OnButton1()
{
SetTimer(1,2000,NULL);
}
void CLotusDlg::OnButton2()
{
m_x=0;
m_N1=0;
m_N2=0;
m_N3=0;
m_N4=0;
m_N5=0;
m_N6=0;
m_N7=0;
UpdateData(FALSE);
m_pProg.SetPos(0);
KillTimer(1);
}
void CLotusDlg::OnTimer(UINT nIDEvent)
{
switch(m_x/10)
{
case 0:
m_N1=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 1:
m_N2=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 2:
m_N3=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 3:
m_N4=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 4:
m_N5=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 5:
m_N6=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 6:
m_N7=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
}
UpdateData(FALSE);
CDialog::OnTimer(nIDEvent);
}
void CLotusDlg::OnOK()
{
KillTimer(1);
CDialog::OnOK();
}
5. 注釋:
(1)產生隨機數的方法
函數unsigned int rand() 產生隨機數。
函數void srand(unsigned int seed) 設定隨機數產生器的種子,其中seed為隨機數產生器的種子,本例中用系統時鍾當前值作隨機數種子:
srand((unsigned)time(NULL));函數的
表達式rand()%36+1產生1-36之間的隨機數
(3) 定時器的使用方法
定時器的使用涉及OnTimer、SetTimer、KillTimer三個函數。
SetTimer用於設定定時時間和啟動定時器,其中第一個參數是定時編號,第二個參數是定時的毫秒數。本例中將1號定時器定時時間設定為2秒:
SetTimer(1,2000,NULL);
定時器啟動以後將持續工作,每到達一次定時時間即啟動一次OnTimer消息函數的執行。KillTimer的作用是停止指定定時器的工作。

3.
MFC單文檔應用程序實現舉例

創建單文檔應用程序的一般步驟:
利用AppWizard創建單文檔應用程序框架。
在文檔類中聲明保存文檔數據所需要數據對象。
完成文檔類的OnNewDocument函數,初始化新文檔。
完成文檔類的Serialize函數,保持和載入文檔數據。
完成視類的OnInitialUpdate函數,初始化顯示。
完成視類的OnDraw函數,顯示當前文檔內容。
在視類中加入可以使用戶編輯文檔數據所需的代碼。
本實驗指導通過以下4 個實驗循序漸進演示創建單文檔應用程序的基本操作,在前一個例子中演練過的操作,在後面的中出現時不再重復描述。
例1 一個簡單的單文檔應用程序——記事本程序
例2 簡單文本和圖形輸出
例3 利用定時器輸出滾動字幕
例4 文檔串列化編程
例1.
一個簡單的單文檔應用程序——記事本程序
1. 只要在AppWizard的Step 6將Base Class設置為EditView,AppWizard就自動完成了一個記事本程序的設計:

2. 運行程序,即可測試記事本的各種功能:

3.說明:
(1)打開Workshop中的Class視圖,可以看到,一個簡單的單文檔應用程序向導自動建立五個類:

向導自動建立的類
相應源文件
其他源文件
相應頭文件
其他頭文

⑧ 我要學什麽c語言系類

【牢記24條】

1.不要看到別人的回復第一句話就說:給個代碼吧!你應該想想為什麼。當你自己想出來再參考別人的提示,你就知道自己和別人思路的差異。

2.初學者請不要看太多太多的書那會誤人子弟的,先找本系統的學,很多人用了很久都是只對部分功能熟悉而已,不系統還是不夠的。

3.看幫助,不要因為很難而自己是初學者所以就不看;幫助永遠是最好的參考手冊,雖然幫助的文字有時候很難看懂,總覺得不夠直觀。

4.不要被對象、屬性、方法等詞彙所迷惑;最根本的是先了解最基礎知識。

5.不要放過任何一個看上去很簡單的小問題--他們往往並不那麼簡單,或者可以引伸出很多知識點;不會舉一反三你就永遠學不會。

6.知道一點東西,並不能說明你會寫c++,是需要經驗積累的。

7.學c++並不難,--難的是長期堅持實踐和不遺餘力的博覽群書;

8.看再多的書是學不全c++,要多實踐。

9.把時髦的技術掛在嘴邊,還不如把過時的技術記在心裡;

10.學習c++最好的方法之一就是多練習;

11.在任何時刻都不要認為自己手中的書已經足夠了;

12.看得懂的書,請仔細看;看不懂的書,請硬著頭皮看;

13.別指望看第一遍書就能記住和掌握什麼——請看第二遍、第三遍;

14.請把書上的例子親手到電腦上實踐,即使配套光碟中有源文件;

15.把在書中看到的有意義的例子擴充;並將其切實的運用到自己的工作中;

16.不要漏掉書中任何一個練習——請全部做完並記錄下思路;

17.當你用腳本到一半卻發現自己用的方法很拙劣時,請不要馬上停手;請盡快將餘下的部分粗略的完成以保證這個代碼的完整性,然後分析自己的錯誤並重新編寫和工作。

18.別心急,寫腳本確實不容易;水平是在不斷的實踐中完善和發展的;

19.每學到一個腳本難點的時候,嘗試著對別人講解這個知識點並讓他理解----你能講清楚才說明你真的理解了;

20.記錄下在和別人交流時發現的自己忽視或不理解的知識點;

21.保存好你做過的所有的源文件----那是你最好的積累之一;

22.對於網路,還是希望大家能多利用一下,很多問題不是非要到論壇來問的,首先你要學會自己找答案,比如google、網路都是很好的搜索引擎,你只要輸入關鍵字就能找到很多相關資料,別老是等待別人給你希望,看的出你平時一定也很懶!

23,到一個論壇,你學會去看以前的帖子,不要什麼都不看就發帖子問,也許你的問題早就有人問過了,你再問,別人已經不想再重復了,做為初學者,誰也不希望自己的帖子沒人回的。

24,雖然不是打擊初學者,但是這句話還是要說:論壇論壇,就是大家討論的地方,如果你總期望有高手總無償指點你,除非他是你親戚!!討論者,起碼是水平相當的才有討論的說法,如果水平真差距太遠了,連基本操作都需要別人給解答,誰還跟你討論呢。能找到很多相關資料,別老是等待別人給你希望,看的出你平時一定也很懶!

浮躁的人容易問:我到底該學什麼;----別問,學就對了;
浮躁的人容易問:c++有錢途嗎;----建議你去搶銀行;
浮躁的人容易說:我要中文版!我英文不行!----不行?學呀!
浮躁的人分兩種:只觀望而不學的人;只學而不堅持的人;
浮躁的人永遠不是一個高手。

十部演算法經典著作 合集
http://www.codeguru.cn/cpp/10book
二級試題全集
http://www.codeguru.cn/cpp/2JiCShiTiJi
高質量C++/C編程指南
http://www.codeguru.cn/cpp/AdvanceC++-CProgramGuide
應用C++技術構建優質軟體
http://www.codeguru.cn/cpp/AppliedCpp
ASCII碼表
http://www.codeguru.cn/cpp/ASCII
C\C++語言程序百例
http://www.codeguru.cn/cpp/C&&C++YuanYanChenXuBaili
C++編碼規范與指導
http://www.codeguru.cn/cpp/C++CodingGuide
C++PrimerPlus4th
http://www.codeguru.cn/cpp/C++PrimerPlus4th
C++語言程序設計課件(作者:鄭莉)
http://www.codeguru.cn/cpp/C++ProgramingZhengLi
C++語言程序設計
http://www.codeguru.cn/cpp/C++YuYanChengXuSheJi
C語言函數示例集
http://www.codeguru.cn/cpp/CFunctionExamples
C高級編程技術
http://www.codeguru.cn/cpp/CGaoJiBianCheng
C語言技術文章
http://www.codeguru.cn/cpp/CLanguageArticle
C++疑難解答
http://www.codeguru.cn/cpp/CppAQ
C++實踐之路
http://www.codeguru.cn/cpp/CppInAction
C++應用程序例解
http://www.codeguru.cn/cpp/CppProgramLiJie
C++參考
http://www.codeguru.cn/cpp/cppreference
CPrimerPlus5thEdition習題答案
http://www.codeguru.cn/cpp/CPrimerPlus5thEditionAnswer
C語言編程寶典之一
http://www.codeguru.cn/cpp/Cprogramdict
C語言參考手冊
http://www.codeguru.cn/cpp/Creference
C語言學習和精華文摘
http://www.codeguru.cn/cpp/CStudyAndArticle
數據訪問模式
http://www.codeguru.cn/cpp/DataAccessPatterns
數據結構與演算法綜合資料庫
http://www.codeguru.cn/cpp/DataStructsLibrary
數據結構-嚴蔚敏
http://www.codeguru.cn/cpp/DataStructYanWeiMin
Effective C++
http://www.codeguru.cn/cpp/EffectiveCpp
GenericProgramming
http://www.codeguru.cn/cpp/GenericProgramming
設計模式迷你手冊
http://www.codeguru.cn/cpp/MiniDesignPattern
經典排序演算法
http://www.codeguru.cn/cpp/SortingAlgorithms
譚浩強C語言
http://www.codeguru.cn/cpp/TanHaoQiangC
TheC++ProgrammingLanguage3rdEd
http://www.codeguru.cn/cpp/TheC++ProgrammingLanguage3rdEd
TheCprogrammingLanguage
http://www.codeguru.cn/cpp/TheCprogrammingLanguage
TurboC2.0集成開發環境的使用
http://www.codeguru.cn/cpp/TurboC2ShiYong
用VC開發ACTIVEX
http://www.codeguru.cn/VC&MFC/ActiveXProgramingWithVC
用DirctX9進行高級3D游戲程序設計
http://www.codeguru.cn/VC&MFC/
APracticalGuideUsingVisual C++andATL
http://www.codeguru.cn/VC&MFC/
21天學會VC資料庫編程
http://www.codeguru.cn/VC&MFC/
STL輕松入門
http://www.codeguru.cn/VC&MFC/EasySTL
InsideAtl
http://www.codeguru.cn/VC&MFC/InsideAtl
COM+組件服務技術內幕
http://www.codeguru.cn/VC&MFC/InsideCOM+
MFC參考手冊
http://www.codeguru.cn/VC&MFC/MFCReference
Windows網路編程技術
http://www.codeguru.cn/VC&MFC/
OGRE手冊
http://www.codeguru.cn/VC&MFC/OGREManual
OpenGL基礎圖形編程
http://www.codeguru.cn/VC&MFC/OpenGLJiChuTuXingBianCheng
MFC程序設計
http://www.codeguru.cn/VC&MFC/progmfc2
VC技術內幕
http://www.codeguru.cn/VC&MFC/ProgramingVC
Windows核心編程
http://www.codeguru.cn/VC&MFC/
21天學會ActiveX編程
http://www.codeguru.cn/VC&MFC/TeachYourselfActivexIn21Days
游戲編程大師技巧(第二版)
http://www.codeguru.cn/VC&MFC/
VC編程經驗總結
http://www.codeguru.cn/VC&MFC/VCBianChengJianYanZongJie
VC編程資料
http://www.codeguru.cn/VC&MFC/VCBianChengZiliao
VC常見問題集(中文)
http://www.codeguru.cn/VC&MFC/VCFaqsCN
VC高級編程
http://www.codeguru.cn/VC&MFC/VCGaoJiBianCheng
vchome圖形圖像編程技術篇
http://www.codeguru.cn/VC&MFC/vchomeGraph
VC知識庫
http://www.codeguru.cn/VC&MFC/vckbase
VC語言參考手冊
http://www.codeguru.cn/VC&MFC/VCLANG
vc++ 編程指南
http://www.codeguru.cn/VC&MFC/VCProgramGuide
Windows程序設計
http://www.codeguru.cn/VC&MFC/WindowsProgramming
Winsock程序員疑難解答
http://www.codeguru.cn/VC&MFC/WinsockProgrammerFAQ
Microsoft編程精粹
http://www.codeguru.cn/VC&MFC/WritingCleanCode

⑨ 我初學C語言,對C不是很了解,哪位高手可以告訴我一些學習方法,經驗,萬分感激

自己博客上的文章
很多人對學習C語言感到無從下手,經常問我同一個問題:究竟怎樣學習C語言?我是一個教師,已經開發了很多年的程序,和很多剛剛起步的人一樣,學習的第一個計算機語言就是C語言。經過這些年的開發,我深深的體會到C語言對於一個程序設計人員多麼的重要,如果不懂C語言,你想寫底層程序這幾乎聽起來很可笑,不懂C語言,你想寫出優秀高效的程序,這簡直就是天方夜譚。為什麼C語言如此重要呢?

第一:C語言語法結構很簡潔精妙,寫出的程序也很高效,很便於描述演算法,大多數的程序員願意使用C語言去描述演算法本身,所以,如果你想在程序設計方面有所建樹,就必須去學它。
第二:C語言能夠讓你深入系統底層,你知道的操作系統,哪一個不是C語言寫的?所有的windows,Unix,Linux,Mac,os/2,沒有一個里外的,如果你不懂C語言,怎麼可能深入到這些操作系統當中去呢?更不要說你去寫它們的內核程序了。
第三:很多新型的語言都是衍生自C語言,C++,Java,C#,J#,perl...哪個不是呢?掌握了C語言,可以說你就掌握了很多門語言,經過簡單的學習,你就可以用這些新型的語言去開發了,這個再一次驗證了C語言是程序設計的重要基礎。還有啊,多說一點:即使現在招聘程序員,考試都是考C語言,你想加入it行業,那麼就一定要掌握好C語言。

那麼究竟怎樣學習C語言呢?

1:工欲善其事,必先利其器
這里介紹幾個學習C語言必備的東東:
一個開發環境,例如turbo?C?2.0,這個曾經占據了DOS時代開發程序的大半個江山。但是現在windows時代,用turbo?C有感覺不方面,編輯程序起來很吃力,並且拖放,更沒有函數變數自動感應功能,查詢參考資料也不方便。建議使用Visual C++,這個東西雖然比較大塊頭,但是一旦安裝好了,用起來很方便。

一本學習教程,現在C語言教材多如牛毛,但推薦大家使用《C語言程序設計》譚浩強主編 第二版 清華大學出版社,此書編寫的很適合初學者,並且內容也很精到。

除此以外,現在有很多輔助學習的軟體,畢竟現在是Window時代了,學習軟體多如牛毛,不象我們當初學習,只有讀書做題這么老套。我向大家推薦一個「集成學習環境(C語言)」,里邊的知識點總結和常式講解都非常好,還有題庫測試環境,據說有好幾千題,甚至還有一個windows下的trubo?C,初學者甚至不用裝其它的編譯器,就可以練習編程了,非常適合初學者。還有一個「C語言學習系統」軟體,不過感覺只是一個題庫系統,如果你覺得題做的不夠,不妨也可以試試。

2:葵花寶典
學習計算機語言最好的方法是什麼?答曰:讀程序。
沒錯,讀程序是學習C語言入門最快,也是最好的方法。如同我,現在學習新的J#,C#等其他語言,不再是抱著書本逐行啃,而是學習它們的常式。當然,對於沒有學過任何計算機語言的初學者,最好還是先閱讀教程,學習完每一章,都要認真體會這一章的所有概念,然後不放過這一章中提到的所有常式,然後仔細研讀程序,直到每一行都理解了,然後找幾個編程題目,最好是和常式類似的或一樣的,自己試圖寫出這段已經讀懂的程序,不要以為常式你已經讀懂了,你就可以寫出和它一樣的程序,絕對不一定,不相信你就試一試吧,如果寫不出來,也不要著急,回過頭來再繼續研究常式,想想自己為什麼寫不出來,然後再去寫這段程序,反反復復,直到你手到擒來為止,祝賀你,你快入門了。

3:登峰造極
寫程序的最高境界其實就是掌握各種解決問題的手段(數據結構)和解決問題的方法(演算法)。?
是不是寫出底層程序就是程序設計高手呢?非也,寫底層程序,無非是掌握了硬體的結構,況且硬體和硬體還不一樣,要給一個晶元寫驅動程序,無非就是掌握這塊晶元的各種寄存器及其組合,然後寫值讀值,僅此而已。這不過是熟悉一些io函數罷了。
那麼怎樣才算精通程序設計呢?怎樣才能精通程序設計呢?舉個例子:你面前有10個人,找出一個叫「張三」的人,你該怎麼辦?第一種方法:直接對這10個人問:「誰叫張三」。第2種方法:你挨個去問「你是不是張三?」,直到問到的這個人就是張三。第三種方法:你去挨個問一個人「你認不認識張三,指給我看」。不要小看這個問題,你說當然會選第一種方法,沒錯恭喜你答對了,因為這個方法最快,效率最高,但是在程序設計中找到解決問題的最優方法和你用的手段卻是考驗一個程序員程序設計水平的重要標志,而且是不容易達到的。剛才這個問題類似於數據結構和演算法中的:Map數據結構,窮舉查找和折半查找。所以掌握好數據結構和一些常用演算法,是登峰造極的必然之路。

⑩ vc++入門看哪本書好些

VC++的編譯語言是C++,開發目標是Windows程序,使用的基礎類庫是MFC。所以要學會使用VC++編程,下面的幾項課程是必須掌握的:C++語言、Windows編程、MFC。
我建議的順序是C++語言---->Windows編程---->MFC,這是因為:
C++是最基本的語法規則,毫無疑問是我們掌握如何與計算機交流的第一步。由於我們的開發目標是Windows,所以要掌握Windows編程的原理以及Windows提供的應用程序介面(API)。而MFC本質上是以C++面向對象的方式對WindowsAPI進行封裝,如果不理解Windows編程的一些重要原理,比如API調用、消息處理機制等等,僅學習MFC必然只能理解得很片面,模稜兩可,即使知道怎樣做也不知道為什麼這樣做。

下面列出一些公認的經典書:
The C Programming Language----------Brian W.Kernighan,Dennis M.Ritchie「介紹標准C語言及其程序設計方法的權威性經典著作」---
C++ Primer----------Stanley B. Lippman「幫助全球無數程序員學會C++」---
Windows 程序設計(第5版)-----Charles Petzold「windows編程泰山北斗」---
Windows核心編程----------Jeffrey Richter「windows編程泰山北斗」---
Windows高級編程指南---------Jeffrey Richter「windows編程泰山北斗」---
深入淺出MFC(第二版)-----「MFC四大天王」-------侯捷
MFC Windows程序設計(第2版)---MFC四大天王」---------Jeff Prosise
Visual C++ 技術內幕(第4版)--MFC四大天王」--------David Kruglinski
深入解析MFC-------------MFC四大天王」-----------George Shepherd

這些書籍包括其作者都是響當當的。
如果你不打算深入研究編程,而只是作為臨時任務的工具的話,看一些應用方面,有很多例子代碼的書就行,比如孫鑫的《VC++深入詳解》,或者一些其他的大部頭工具書。如果想研究編程,深入理解MFC的工作機制,首先要精通Windows編程。《Windows 程序設計》是較為基礎的,實例代碼很多,《Windows核心編程》和《Windows高級編程指南》就比較拔高了,涉及很多操作系統的知識。掌握Windows編程後再研究MFC就輕松多了,它就是對WindowsAPI的封裝,侯捷的《深入淺出MFC》講得蠻細致深入。

閱讀全文

與vc編程指南相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:962
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:142
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:732
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:301
PDF分析 瀏覽:484
h3c光纖全工半全工設置命令 瀏覽:141
公司法pdf下載 瀏覽:381
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:890
app轉賬是什麼 瀏覽:163