日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

用C语言进行Windows编程入门

發布時間:2023/12/20 windows 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用C语言进行Windows编程入门 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

用C語言進行Windows編程入門

本文對一般教程或網上有的(如C語言語法等基礎)不深入介紹,對初學者易造成疑惑誤解或難以找到的內容進行較詳盡的介紹。

學習C語言很久了,一直面對控制臺應用程序(Win32 Console Application),沒有漂亮的界面,是不是不爽呀。用C開發圖形界面程序,有多種技術方案,本文希望用簡單的例子,深入淺出的介紹一種方案——用C和SDK進行圖形界面編程。

圖形界面又叫圖形用戶接口(GUI = Graphical User Interface),這樣的程序的窗口包含最大化、最小化、關閉按鈕,也包含菜單、單選框、圖像等組成。

本文主題是用C語言進行Windows編程。

一般而言,基于 Windows 的編程方式有兩種。一種是使用 Windows? 的 API(Application Programming Interface ,應用程序編程接口)函數,通常用? C/C++ 語言按相應的程序框架進行編程。這些程序框架往往就程序應用提供相應的文檔、范例和軟件開發工具包(Software Development Kit ,SDK ),所以這種編程方式有時又稱為? SDK 方式。另一種是使用“封裝”方式,例如Visual C++ 的MFC方式,它是將 SDK? 中的絕大多數函數、 數據等按 C++“類”的形式進行封裝,并提供相應的應用程序框架和編程操作,簡單地說,MFC 是對 API 的封裝,隱藏了許多復雜的情節。

C語言源代碼文件的后綴是.c,C++語言源代碼文件的后綴是.cpp。

要進行Windows編程,需要先對Windows 有一個初步認識

Windows 的 3 個主要子系統:內核(kernel),用戶(user),GDI。

內核 負責操作系統的傳統工作:如 內存管理,文件輸入/輸出 以及任務管理等。

用戶 指的是用戶界面,負責所有的窗口管理。

GDI 就是圖形設備接口,負責在屏幕或打印機上顯示文本與圖形。

在 Windows 程序中,調用 Windows 函數與調用 C 語言的庫函數沒有什么兩樣。

最主要的區別就是 C 語言庫函數的機器代碼會直接鏈接到你的程序代碼中去,而 Windows 函數則是放到你的程序之外的 DLL 里。

關于這些,作為初學者可以大體了解之,不必深究,隨著深入學習實線,經過一段時間,才會有清晰的認識。

下面開發實驗,先使用Dev-C++開發環境,然后在再介紹VC++開發環境。

所謂開發環境,也就是安裝編譯器或者 IDE(集成開發環境)。Windows 下的C語言 IDE 眾多,本人使用的是 Dev C++5.11。Dev C++ 是一款免費開源的 C/C++ IDE,內嵌 GCC 編譯器(Linux GCC 編譯器的 Windows 移植版),是 NOI、NOIP 等比賽的指定工具。Dev C++ 的優點是體積小(只有幾十兆)、安裝卸載方便、學習成本低,適合于初學者使用,缺點是調試功能弱,功能并不完善,不易用來開發商業級的軟件。

VC++開發環境,講了兩種VC6.0(VC++6.0)和Microsoft Visual C++ 2010 Express。

微軟公司的VC6.0(VC++6.0)完整版在Win7、Win10中存在兼容問題,故使用VC++ 6.0第三方修改版本,在網上也容易找到。微軟新版 Visual Studio(簡稱 VS,包含VC++),如VS2010、VS2015等,目前最新版式VS2019,功能越來越全面,但越來越龐大。全國計算機等級考試組委會決定,2018年全國計算機二級 C、C++兩個科目的應用軟件由 Visual C++6.0 改為 Visual C++ 2010 學習版(即 Visual C++ 2010 Express)。綜合看來,C語言初學者,可以考慮VC++6.0第三方修改的版本,或者使用Microsoft Visual C++ 2010 Express

為了便于學習者,我給出開發工具(C_C++實驗學習環境合集)的下載地址:C及C++實驗學習環境合集.rar_c++實驗環境-C++工具類資源-CSDN下載

所提的三種工具,對每一種都先演示控制臺程序,再演示帶界面的Windows程序。

不帶圖形用戶界面(Graphical User Interface,簡稱 GUI,又稱圖形用戶接口)的程序是控制臺程序(Console Application)。帶界面的Windows程序(Windows Application),也稱為GUI程序(GUI Application)。

Dev-C++開發使用

下面簡要介紹一下Dev C++的安裝:

下載完成后,就像安裝其他軟件一樣,點擊安裝包,出現如下圖,語言先默認選擇English,不要改變(安裝完成后會選擇中文簡體的選項設置)。點ok!

?

接下來的安裝界面點“I agree”按鈕,之后,一路默認點擊“next”按鈕,直至“finish”,此時出現:

此時你就可以選擇 中文簡體。

控制臺程序以 main() 為入口函數,Windows程序以 WinMain() 為入口函數,動態鏈接庫(DLL)以 DllMain() 為入口函數(請查看 動態鏈接庫DLL教程),不同的入口函數決定了不同類型的程序。

從main? 到WinMain

??? 學習編程一般從簡單的例子入手,例如一個 C 程序常有下列簡單的框架代碼:

??? #include <stdio.h>

??? int main()

??? {

????? printf("Hello World!\n");????????????????? /*輸出*/

????? return 0;?????????????????????????????? /*指定返回值*/

????? }

該程序已包括? C 程序中最常用的 #include? 指令、必須的程序入口? main 函數、庫函數 printf? 調用和 return 語句。由于此程序是在早期的DOS(Disk Operating System ,磁盤操作系統)環境的字符模型下運行的,因而 printf 函數所輸出的都是字符流,也就是說,它在屏幕上輸出一行文本“ Hello World!? ”。基于 Windows的上述 C 程序代碼框架肯定是有所不同的。等價的 Windows? 程序可以寫成:

?????? #include <windows.h>

?????? int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int nCmdShow)

?????? {

???????? MessageBox (NULL, TEXT("Hello, World!"), TEXT("Hello"), 0) ;

???????? return 0 ;

?????? }?

使用C和Win32 SDK開發Windows圖形界面程序,運行時會顯示黑乎乎的CMD窗口。原因是控制臺(CONSOLE)程序,必然出現cmd窗口。如何不顯示CMD窗口后面再說。

該程序的 #include<windows.h> 就是像 C 語言的 #include<stdio.h> 一樣重要的頭文件。這些頭文件定義了Windows的所有數據類型、函數原型、數據結構和符號常量,也就是說,所有的Windows API都在這些頭文件中聲明。

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow),就像 C 語言的 int main(void) 一樣,都是程序的入口。C 程序的入口是 main,Windows 程序的入口是 WinMain。WinMain() 函數的原型為:

int WINAPI WinMain(

??? HINSTANCE hInstance,? // 當前窗口句柄

??? HINSTANCE hPrevInstance,? // 前一個窗口句柄,Win32下為NULL(Win16留下的廢物,目前已棄用)

??? LPSTR lpCmdLine,? // 命令行參數

??? int nCmdShow? // 窗口顯示方式

);

WinMain的第一個參數叫做"實例句柄"(Instance Handle)。句柄就是一個數值,用它來標識某些東西。句柄是一個 4byte 的數值,可用來標識 窗口,按鈕,圖標,滾動條,輸出設備,控件或者文件等等。

第二個參數通常是 NULL。

第三個參數是用來運行程序的命令行(CommandLine)。

第四個參數是用來指明程序最初如何顯示。(最大化到全屏,正常顯示,最小化到任務欄)。

MessageBox函數:

?函數原型:int WINAPI MessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType);

第一個參數通常是一個窗口句柄。

第二個參數是在信息框里出現的文本字符串。

第三個參數是標題欄上顯示的文本字符串。

第四個參數是以前綴MB_開頭的一些常量組合。用以對話框中的按鈕,圖標等等。

在輸入代碼時,一個好的習慣是創建了一個新程序后,在還未輸入代碼之前先將該程序保存到硬盤某個目錄下,然后在程序的編輯過程中經常性地保存程序,以防止機器突然斷電或者死機。要保存程序,只需從主菜單選擇“File—〉Save”,此時會將程序重新保存到之前指定的目錄下,如F:\temp ;如果想將程序保存到其他的硬盤路徑下,可以選擇“File—〉Save As…”

【 插入一個話題,跳過這部分不影響理解本文:在Dev-C++上使用自己寫頭文件

1.新建--源代碼。注意:刪去不必要的函數尤其是主函數,刪去多余的定義,避免出現重復定義。數據類型用typedef定義。

2.保存:在保存類型的下拉列表中選擇Header Files

3.寫入函數,定義等

4.別忘了保存

5.引用:例:#include<路徑\文件名.后綴>

#include<C:\Users\lair\Desktop\hello.h>

Dev C++安裝第三方庫(.h文件、頭文件)

注意兼容的才能使用。

初學者容易被這些坑搞得心灰意冷。

打開Dev-C++,點擊工具欄,工具欄選擇編譯選項找到目錄,C++包含文件,在C++包含文件中可以找到頭文件添加的位置

第三步? :電腦中找到這個位置,把第三方庫(.h文件、頭文件)復制粘貼過去:

注意:不同系列編輯器(如TC++、DEV-C++、Visual C++)的頭文件(.h文件、庫)一般不兼容,使用時要注意。】

如何不顯示CMD窗口呢?參見下圖:

如此,可由Dev-C++自動生成一些代碼——Windows圖形界面框架代碼 ,如下圖:

你可以將代碼區的內容替換為:

#include <windows.h>

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

int WINAPI WinMain(
? ? HINSTANCE hInstance,
? ? HINSTANCE hPrevInstance,
? ? PSTR szCmdLine,
? ? int iCmdShow
){
? ? static TCHAR szClassName[] = TEXT("HelloWin"); ?//窗口類名
? ? HWND ? ? hwnd; ?//窗口句柄
? ? MSG ? ? ?msg; ?//消息
? ? WNDCLASS wndclass; ?//窗口類

? ? /**********第①步:注冊窗口類**********/
? ? //為窗口類的各個字段賦值
? ? wndclass.style = CS_HREDRAW | CS_VREDRAW; ?//窗口風格
? ? wndclass.lpfnWndProc ?= WndProc; ?//窗口過程
? ? wndclass.cbClsExtra ? = 0; ?//暫時不需要理解
? ? wndclass.cbWndExtra ? = 0; ?//暫時不需要理解
? ? wndclass.hInstance ? ?= hInstance; ?//當前窗口句柄
? ? wndclass.hIcon ? ? ? ?= LoadIcon (NULL, IDI_APPLICATION); ?//窗口圖標
? ? wndclass.hCursor ? ? ?= LoadCursor (NULL, IDC_ARROW); ?//鼠標樣式
? ? wndclass.hbrBackground= (HBRUSH) GetStockObject (WHITE_BRUSH); ?//窗口背景畫刷
? ? wndclass.lpszMenuName = NULL ; ?//窗口菜單
? ? wndclass.lpszClassName= szClassName; ?//窗口類名

? ? //注冊窗口
? ? RegisterClass(&wndclass);

? ? /*****第②步:創建窗口(并讓窗口顯示出來)*****/
? ? hwnd = CreateWindow(
? ? ? ? szClassName, ?//窗口類的名字
? ? ? ? TEXT("Welcome"), ?//窗口標題(出現在標題欄)
? ? ? ? WS_OVERLAPPEDWINDOW, ?//窗口風格
? ? ? ? CW_USEDEFAULT, ?//初始化時x軸的位置
? ? ? ? CW_USEDEFAULT, ?//初始化時y軸的位置
? ? ? ? 500, ?//窗口寬度
? ? ? ? 300, ?//窗口高度
? ? ? ? NULL, ?//父窗口句柄
? ? ? ? NULL, ?//窗口菜單句柄
? ? ? ? hInstance, ?//當前窗口的句柄
? ? ? ? NULL ?//不使用該值
? ? );

? ? //顯示窗口
? ? ShowWindow (hwnd, iCmdShow);
? ? //更新(繪制)窗口
? ? UpdateWindow (hwnd);

? ? /**********第③步:消息循環**********/
? ? while( GetMessage(&msg, NULL, 0, 0) ){
? ? ? ? TranslateMessage(&msg); ?//翻譯消息
? ? ? ? DispatchMessage (&msg); ?//分派消息
? ? }

? ? return msg.wParam;
}

/**********第④步:窗口過程**********/
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){
? ? HDC ? ? ? ? hdc; ?//設備環境句柄
? ? PAINTSTRUCT ps;
? ? RECT ? ? ? ?rect;

? ? switch (message){
? ? ? ? //窗口繪制消息
? ? ? ? case WM_PAINT:
? ? ? ? ? ? hdc = BeginPaint (hwnd, &ps) ;
? ? ? ? ? ? GetClientRect (hwnd, &rect) ;
? ? ? ? ? ? DrawText(
? ? ? ? ? ? ? ? hdc,
? ? ? ? ? ? ? ? TEXT("你好,Windows世界"),
? ? ? ? ? ? ? ? -1,
? ? ? ? ? ? ? ? &rect,
? ? ? ? ? ? ? ? DT_SINGLELINE | DT_CENTER | DT_VCENTER
? ? ? ? ? ? );
? ? ? ? ? ? EndPaint (hwnd, &ps) ;
? ? ? ? ? ? return 0 ;

? ? ? ? //窗口銷毀消息
? ? ? ? case WM_DESTROY:
? ? ? ? ? ? PostQuitMessage(0) ;
? ? ? ? ? ? return 0 ;
? ? }
? ? return DefWindowProc(hwnd, message, wParam, lParam) ;
}

編譯運行結果如下:

這是一個簡單Windows程序,Dev C++同時自動生成了其它幾個文件,參見下圖:

為了便于管理使用,建議為每個用Dev-C++建立C項目(Project:工程,項目)建立一個文件夾(目錄)。

這是一個用Dev-C++的C語言開發最簡單的Windows應用程序,有點嚇人,顯然不像控制臺應用程序那么簡單,幾行代碼搞定。這顯然不是短時間就學透頭,本文的目的是說明C語言是可以開發Windows應用程序的。

上面例子代碼,是一個Windows程序的基本框架,從中可以了Windows應用程序文件主要包括如下部分:

第①部分、注冊窗口類

第②部分、根據窗口類來創建窗口

第③部分、進入無休止的消息循環

第④部分、編寫窗口過程

大部分代碼一樣,直接拿來當作代碼模板用,主要不同是在第④部分。

下面是一個像樣點的程序,同時作為上述文字的印證:

#include <windows.h>

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

HINSTANCE hInst;?? //HINSTANCE 是“句柄型”數據類型。---------

int WINAPI WinMain(

??? HINSTANCE hInstance,

??? HINSTANCE hPrevInstance,

??? PSTR szCmdLine,

??? int iCmdShow

){

??? static TCHAR szClassName[] = TEXT("Win32Demo");? //窗口類名

??? HWND???? hwnd;? //窗口句柄

??? MSG????? msg;? //消息

??? WNDCLASS wndclass;? //窗口類

??? hInst = hInstance;?? //------------

??? /**********第①步:注冊窗口類**********/

??? //為窗口類的各個字段賦值

??? wndclass.style = CS_HREDRAW | CS_VREDRAW;? //窗口風格

??? wndclass.lpfnWndProc? = WndProc;? //窗口過程

??? wndclass.cbClsExtra?? = 0;? //暫時不需要理解

??? wndclass.cbWndExtra?? = 0;? //暫時不需要理解

??? wndclass.hInstance??? = hInstance;? //當前窗口句柄

??? wndclass.hIcon????? ??= LoadIcon (NULL, IDI_APPLICATION);? //窗口圖標

??? wndclass.hCursor????? = LoadCursor (NULL, IDC_ARROW);? //鼠標樣式

??? wndclass.hbrBackground= (HBRUSH) GetStockObject (WHITE_BRUSH);;? //窗口背景畫刷(白色)

??? wndclass.lpszMenuName = NULL ;? //窗口菜單

??? wndclass.lpszClassName= szClassName;? //窗口類名

??? //注冊窗口

??? RegisterClass(&wndclass);

??? /*****第②步:創建窗口(并讓窗口顯示出來)*****/

??? hwnd = CreateWindow(

??????? szClassName,? //窗口名字

??????? TEXT("Welcome"),? //窗口標題(出現在標題欄)

??????? WS_OVERLAPPEDWINDOW,? //窗口風格

??????? CW_USEDEFAULT,? //初始化時x軸的位置

??????? CW_USEDEFAULT,? //初始化時y軸的位置

??????? 500,? //窗口寬度

??????? 300,? //窗口高度

??????? NULL,? //父窗口句柄

??????? NULL,? //窗口菜單句柄

??????? hInstance,? //當前窗口的句柄

??????? NULL? //不使用該值

??? );

??? //顯示窗口

??? ShowWindow (hwnd, iCmdShow);

??? //更新(繪制)窗口

??? UpdateWindow (hwnd);

??? /**********第③步:消息循環**********/

??? while( GetMessage(&msg, NULL, 0, 0) ){

??????? TranslateMessage(&msg);? //翻譯消息

??????? DispatchMessage (&msg);? //分派消息

??? }

??? return msg.wParam;

}

?/**********第④步:消息循環**********/

?//------------

LRESULT CALLBACK WndProc(

??? HWND hWnd,

??? UINT message,

??? WPARAM wParam,

??? LPARAM lParam

){

??? int wmId, wmEvent;

??? PAINTSTRUCT ps;

??? HDC hdc;

??? static HFONT hFont;

??? static HWND hBtn;

??? static HWND hStatic;

??? switch (message){

??????? case? WM_CREATE:

??????????? //創建邏輯字體

??????????? hFont = CreateFont(

??????????????? -15/*高度*/, -7.5/*寬度*/, 0, 0, 400 /*一般這個值設為400*/,

??????????????? FALSE/*不帶斜體*/, FALSE/*不帶下劃線*/, FALSE/*不帶刪除線*/,

??????????????? DEFAULT_CHARSET,? //使用默認字符集

??????????????? OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS,? //這行參數不用管

??????????? ????DEFAULT_QUALITY,? //默認輸出質量

??????????????? FF_DONTCARE,? //不指定字體族*/

??????????????? TEXT("微軟雅黑")? //字體名

??????????? );

??????????? //創建靜態文本控件

??????????? hStatic = CreateWindow(

??????????????? TEXT("static"),? //靜態文本框的類名

??????????????? TEXT("你好,歡迎來到C語言中文網"),? //控件的文本

??????????????? WS_CHILD /*子窗口*/ | WS_VISIBLE /*創建時顯示*/ | WS_BORDER /*帶邊框*/,

??????????????? 30 /*X坐標*/, 20/*Y坐標*/, 150/*寬度*/, 80/*高度*/, hWnd/*父窗口句柄*/,

??????????????? (HMENU)1,? //為控件指定一個唯一標識符

??????????????? hInst,? //當前實例句柄

????????? ??????NULL

??????????? );

??????????? //創建按鈕控件

??????????? hBtn = CreateWindow(

??????????????? TEXT("button"), //按鈕控件的類名

??????????????? TEXT("點擊這里試試"),

??????????????? WS_CHILD | WS_VISIBLE | WS_BORDER | BS_FLAT/*扁平樣式*/,

??????????????? 30 /*X坐標*/, 110 /*Y坐標*/, 150 /*寬度*/, 50/*高度*/,

??????????????? hWnd, (HMENU)2 /*控件唯一標識符*/, hInst, NULL

??????????? );

??????????? SendMessage(hStatic,WM_SETFONT,(WPARAM)hFont,NULL);//設置文本框字體

??????????? SendMessage(hBtn, WM_SETFONT, (WPARAM)hFont, NULL);//設置按鈕字體

??????????? break;

??????? case WM_COMMAND:

??????????? wmId??? = LOWORD(wParam);

??????????? wmEvent = HIWORD(wParam);

??????????? switch (wmId){

??????????????? case 2:? //按下按鈕

???? ???????????????//更改文本框的內容

??????????????????? SetWindowText(hStatic, TEXT("你點擊了下面的按鈕"));

??????????????????? break;

??????????????? default:

??????????????????? //不處理的消息一定要交給 DefWindowProc 處理。

??????????????????? return DefWindowProc(hWnd, message, wParam, lParam);

??????????? }

??????????? break;

??????? case WM_PAINT:

??????????? hdc = BeginPaint(hWnd, &ps);

??????????? // TODO:? 在此添加任意繪圖代碼...

??????????? EndPaint(hWnd, &ps);

??????????? break;

??????? case WM_DESTROY:

??????????? //請做好善后工作

??????????? DeleteObject(hFont);

??????????? PostQuitMessage(0);

??????????? break;

??????? default:

??????????? return DefWindowProc(hWnd, message, wParam, lParam);

??? }

??? return 0;

}

運行結果如下:

現在介紹VC++6.0的使用

先簡要介紹VC6.0的使用, 微軟原版的 VC6.0 已經不容易找到,網上提供的都是經過第三方修改的版本,刪除了一些使用不到的功能,增強了和win10的兼容性。

打開VC6.0,按下圖所示操作新建工程(Project:工程,項目)

提示:選擇“An empty project”項將生成一個空的工程,工程內不包括任何東西。選擇“A simple application”項將生成包含一個空的main函數和一個空的頭文件的工程。選“A "Hello World!" application”項與選“A simple application”項沒有什么本質的區別,只是包含有顯示出“Hello World!”字符串的輸出語句。選擇“An application that supports MFC”項的話,可以利用VC6.0所提供的類庫來進行編程。

點擊“Finish”按鈕完成工程的創建。再按下圖所示建立C源文件:

提示:微軟的VC++(Visual C++)是在C語言的基礎上進行的擴展,C++已經包含了C語言的所有內容,所以大部分的 IDE 只有創建C++文件的選項,沒有創建C語言文件的選項。但是這并不影響使用,我們在填寫源文件名稱時把后綴改為.c即可,編譯器會根據源文件的后綴來判斷代碼的種類。

再單擊工具欄上的保存 按鈕,在工作空間中可以看到剛才創建的工程和源文件,如下圖所示:

現在可以按下圖所示編譯并運行代碼:

注意:編譯生成的 .exe 文件在工程(Project)目錄下的Debug文件夾內。打開看到有一個Debug文件夾,進入可以看到 cDemo.exe。除了 hello.c,還會看到很多其他文件,它們是VC6.0自動創建的,用來支持當前工程,如下圖:

其中,dsp文件:DeveloperStudio Project,是VC6.0的工程文件,用來保存當前工程的信息,例如編譯參數、包含的源文件等,不建議手動改動。當需要打開一個已存在的工程時,打開該文件即可

上面介紹的是用VC++6.0建立Win32 Console Application,即win32控制臺應用程序,沒有漂亮的界面,運行時會顯示黑乎乎的CMD窗口。Win32 Application(Win32應用程序) 是普通的常見的窗口應用程序,是所謂的GUI(Graphics User Interface圖形用戶接口),我們可以通過鼠標點擊來完成控制。兩者有明顯的不同:

控制臺應用程序:
入口函數為main,一般寫C和C++計算類代碼常用,如計算水仙花數、冒泡排序等一類程序。程序運行結果以命令行窗口顯示。
window應用程序:
入口函數為WinMain,一般用于寫桌面應用程序,強大之處在于能夠作出用戶操作界面,并與操作系統配合捕獲并響應用戶的各種操作,如鼠標移動、按鈕形狀及點擊等基本上要用win32 api自己寫代碼實現,比較繁雜。

順便提及,MFC(微軟基礎類庫)應用程序,也有界面,飯界面里的控件不需要自己去實現了,常用的控件都已經在MFC庫內寫好,直接拖動即可。

只強調實用與開發效率,用MFC;強調用戶體驗與軟件細節及靈活性,使用WIN32。MFC可以實現的,WIN32都可以實現,反之不可。

VC++ 6.0可創建的工程類型還有一些,說實話我也知道的不多,就不提了。

為了切合本文主題,下面介紹 用VC++ 6.0建立Win32 Application(Win32應用程序)。

首先創建項目,選擇File->New,出現如下對話框,并參見下圖設置:

添加C源文件,選擇File->New,出現如下對話框,并參見下圖設置

輸入如下代碼(這段代碼在本文的前面已出現過):

#include <windows.h>

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

HINSTANCE hInst;?? //HINSTANCE 是“句柄型”數據類型。---------

int WINAPI WinMain(

??? HINSTANCE hInstance,

??? HINSTANCE hPrevInstance,

??? PSTR szCmdLine,

??? int iCmdShow

){

??? static TCHAR szClassName[] = TEXT("Win32Demo");? //窗口類名

??? HWND???? hwnd;? //窗口句柄

??? MSG????? msg;? //消息

??? WNDCLASS wndclass;? //窗口類

??? hInst = hInstance;?? //------------

??? /**********第①步:注冊窗口類**********/

??? //為窗口類的各個字段賦值

??? wndclass.style = CS_HREDRAW | CS_VREDRAW;? //窗口風格

??? wndclass.lpfnWndProc? = WndProc;? //窗口過程

??? wndclass.cbClsExtra?? = 0;? //暫時不需要理解

??? wndclass.cbWndExtra?? = 0;? //暫時不需要理解

??? wndclass.hInstance??? = hInstance;? //當前窗口句柄

??? wndclass.hIcon??????? = LoadIcon (NULL, IDI_APPLICATION);? //窗口圖標

??? wndclass.hCursor????? = LoadCursor (NULL, IDC_ARROW);? //鼠標樣式

??? wndclass.hbrBackground= (HBRUSH) GetStockObject (WHITE_BRUSH);;? //窗口背景畫刷(白色)

??? wndclass.lpszMenuName = NULL ;? //窗口菜單

??? wndclass.lpszClassName= szClassName;? //窗口類名

??? //注冊窗口

??? RegisterClass(&wndclass);

??? /*****第②步:創建窗口(并讓窗口顯示出來)*****/

??? hwnd = CreateWindow(

??????? szClassName,? //窗口名字

??????? TEXT("Welcome"),? //窗口標題(出現在標題欄)

??????? WS_OVERLAPPEDWINDOW,? //窗口風格

??????? CW_USEDEFAULT,? //初始化時x軸的位置

??????? CW_USEDEFAULT,? //初始化時y軸的位置

??????? 500,? //窗口寬度

??????? 300,? //窗口高度

??????? NULL,? //父窗口句柄

??????? NULL,? //窗口菜單句柄

??????? hInstance,? //當前窗口的句柄

??????? NULL? //不使用該值

??? );

??? //顯示窗口

??? ShowWindow (hwnd, iCmdShow);

??? //更新(繪制)窗口

??? UpdateWindow (hwnd);

??? /**********第③步:消息循環**********/

??? while( GetMessage(&msg, NULL, 0, 0) ){

??????? TranslateMessage(&msg);? //翻譯消息

??????? DispatchMessage (&msg);? //分派消息

??? }

??? return msg.wParam;

}

?/**********第④步:消息循環**********/

?//------------

LRESULT CALLBACK WndProc(

??? HWND hWnd,

??? UINT message,

??? WPARAM wParam,

??? LPARAM lParam

){

??? int wmId, wmEvent;

??? PAINTSTRUCT ps;

??? HDC hdc;

??? static HFONT hFont;

??? static HWND hBtn;

??? static HWND hStatic;

??? switch (message){

??????? case? WM_CREATE:

??????????? //創建邏輯字體

??????????? hFont = CreateFont(

??????????????? -15/*高度*/, -7.5/*寬度*/, 0, 0, 400 /*一般這個值設為400*/,

??????????????? FALSE/*不帶斜體*/, FALSE/*不帶下劃線*/, FALSE/*不帶刪除線*/,

??????????????? DEFAULT_CHARSET,? //使用默認字符集

??????????????? OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS,? //這行參數不用管

??????????????? DEFAULT_QUALITY,? //默認輸出質量

??????????????? FF_DONTCARE,? //不指定字體族*/

??????????????? TEXT("微軟雅黑")? //字體名

??????????? );

??????????? //創建靜態文本控件

??????????? hStatic = CreateWindow(

??????????????? TEXT("static"),? //靜態文本框的類名

??????????????? TEXT("你好,歡迎來到C語言中文網"),? //控件的文本

??????????????? WS_CHILD /*子窗口*/ | WS_VISIBLE /*創建時顯示*/ | WS_BORDER /*帶邊框*/,

??????????????? 30 /*X坐標*/, 20/*Y坐標*/, 150/*寬度*/, 80/*高度*/, hWnd/*父窗口句柄*/,

??????????????? (HMENU)1,? //為控件指定一個唯一標識符

????????????? ??hInst,? //當前實例句柄

??????????????? NULL

??????????? );

??????????? //創建按鈕控件

??????????? hBtn = CreateWindow(

??????????????? TEXT("button"), //按鈕控件的類名

??????????????? TEXT("點擊這里試試"),

??????????????? WS_CHILD | WS_VISIBLE | WS_BORDER | BS_FLAT/*扁平樣式*/,

?? ?????????????30 /*X坐標*/, 110 /*Y坐標*/, 150 /*寬度*/, 50/*高度*/,

??????????????? hWnd, (HMENU)2 /*控件唯一標識符*/, hInst, NULL

??????????? );

??????????? SendMessage(hStatic,WM_SETFONT,(WPARAM)hFont,NULL);//設置文本框字體

??????????? SendMessage(hBtn, WM_SETFONT, (WPARAM)hFont, NULL);//設置按鈕字體

??????????? break;

??????? case WM_COMMAND:

??????????? wmId??? = LOWORD(wParam);

??????????? wmEvent = HIWORD(wParam);

??????????? switch (wmId){

??????????????? case 2:? //按下按鈕

??????????????????? //更改文本框的內容

??????????????????? SetWindowText(hStatic, TEXT("你點擊了下面的按鈕"));

??????????????????? break;

??????????????? default:

??????????????????? //不處理的消息一定要交給 DefWindowProc 處理。

??????????????????? return DefWindowProc(hWnd, message, wParam, lParam);

??????????? }

??????????? break;

??????? case WM_PAINT:

??????????? hdc = BeginPaint(hWnd, &ps);

??????????? // TODO:? 在此添加任意繪圖代碼...

??????????? EndPaint(hWnd, &ps);

??????????? break;

??????? case WM_DESTROY:

??????????? //請做好善后工作

???????? ???DeleteObject(hFont);

??????????? PostQuitMessage(0);

??????????? break;

??????? default:

??????????? return DefWindowProc(hWnd, message, wParam, lParam);

??? }

??? return 0;

}

注意,這里是用VC++ 6.0的C語言進行Windows編程, VC++ 6.0功能很多,如可以用C++和MFC(微軟基礎類庫)進行Windows編程,并且可創建的工程類型很多,為符合本文主題未提及。

Microsoft Visual C++ 2010 Express的使用

打開 Microsoft Visual C++ 2010 Express,在菜單欄中選擇“文件 --> 新建 --> 項目,參見下圖:

在“新建項目”對話框中:選擇“Win32控制臺應用程序”,填寫好項目名稱(如cDemo),選擇好存儲路徑,點擊“確定”按鈕

點擊“確定”按鈕后會彈“歡迎使用 Win32 應用程序向導”對話框

點擊下一步”按鈕,彈出新的“應用程序設置”對話框

先取消“預編譯頭”,再勾選“空項目”,然后點擊“完成”按鈕

現在,就可以添加源文件參見下圖:

在“源文件”處右擊鼠標,在彈出菜單中選擇“添加 -> 新建項”出現“添加新項”對話框

在“代碼”分類中選擇C++文件(.cpp),填寫文件名(注意文件名后綴改為.c),點擊“添加”按鈕就添加了一個新的源文件

輸入如下代碼

#include <stdio.h>

#include <stdlib.h>

int main()

{

??? puts("你好!世界");

system("pause");? //此句的作用就是讓程序暫停一下

??? return 0;

}

編譯運行,參見下圖:

VC++2010開發的用應用程所在文件夾(目錄)情況,如下圖所示:

其中:

vcxproj是Visual C++ 2010(VC2010)的工程(Project:工程,項目)文件的后綴。?.vcxproj文件是自動生成生成的工程文件, 它包含生成該文件的 Visual C++ 的版本信息,以及有關使用應用程序向導選擇的平臺、配置和項目功能的信息。 對于工程來說,是非常重要的。這個文件在轉移工程時,不要刪除。我們打開別人的項目,一些設置已經保存于此,如果只是拷貝代碼文件,這些信息就不見了,就可能導致工程無法正常打開編譯運行。

sln是解決方案配置(solution)文件的后綴,Visual Studio開發套裝進入.net時代后,使用解決方案文件(后綴為sln的文件)表示一個項目組,他通常包含一個項目中所有的工程文件信息。

打開已存在的VC工程時,可以打開vcxproj文件或sln文件。打開sln文件是可以啟動工程的,那是因為sln文件有工程文件的入口,sln是以解決方案的方式啟動,打開vcxproj文件,則是以工程的名義啟動的。

順便說明:關于MS VC++的工程文件的后綴

??? vc6的工程文件是.dsp

??? vc2002-2008工程文件是vcproj

? ? vc2010之后是vcxproj

上面介紹的是用VC2010建立Win32 Console Application,即win32控制臺應用程序。

下面簡要介紹用VC2010 建立Win32 Application(Win32應用程序):

在菜單欄中選擇“文件 --> 新建 --> 項目

在“新建項目”對話框中:選擇“Win32項目”,填寫好項目名稱(如winAppDemo),選擇好存儲路徑,點擊“確定”按鈕

點擊“確定”按鈕后會彈“歡迎使用 Win32 應用程序向導”對話框

點擊下一步”按鈕,彈出新的“應用程序設置”對話框

勾選“空項目”,然后點擊“完成”按鈕

現在,就可以添加源文件

在“源文件”處右擊鼠標,在彈出菜單中選擇“添加 -> 新建項”出現“添加新項”對話框

在“代碼”分類中選擇C++文件(.cpp),填寫文件名(注意文件名后綴改為.c),點擊“添加”按鈕就添加了一個新的源文件

將前面“(這段代碼在本文的前面已出現過)”部分下的代碼輸入,編譯運行,參見下圖:

特別說明,所附代碼肯定運行通過。斷斷續續寫了幾天,就到這兒吧。

總結

以上是生活随笔為你收集整理的用C语言进行Windows编程入门的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

日日夜夜干 | 色亚洲网 | 久草久草在线观看 | 黄色不卡av | 九九热免费精品视频 | 精品国产亚洲一区二区麻豆 | 欧美性色网站 | 成人精品影视 | 精品亚洲一区二区三区 | 精品一区二区免费 | 在线观看黄 | 国产美女精彩久久 | 激情五月亚洲 | 888av| 久久免费在线视频 | 国产精品av免费在线观看 | 热re99久久精品国产99热 | 国产视频首页 | 亚洲激情五月 | 国产欧美精品一区二区三区四区 | 九九视频免费观看视频精品 | 一区二区三区手机在线观看 | 99精品视频在线播放观看 | 成人国产精品免费观看 | 久热爱 | 一区二区三区精品在线视频 | 久久99九九99精品 | 最新日韩视频在线观看 | 91麻豆免费看 | 在线观看中文字幕2021 | 中文字幕在线成人 | 在线免费成人 | 久久免费av | 播五月综合 | 粉嫩高清一区二区三区 | 一本色道久久精品 | 日韩在线激情 | 国产录像在线观看 | 五月天亚洲激情 | 欧美激情h | 在线观看视频日韩 | 五月天视频网站 | 成全免费观看视频 | 久久久亚洲网站 | 国产在线观看99 | 亚洲精品资源在线观看 | 欧美激情视频在线观看免费 | 国产精品综合在线观看 | 精品一区二区三区久久久 | 高清免费在线视频 | 亚洲精品美女 | 啪啪免费观看网站 | www.亚洲在线| 激情综合六月 | 人人干人人草 | 美女网站黄免费 | 亚洲精品456在线播放乱码 | 亚洲另类xxxx | 97人人精品 | av成人动漫在线观看 | 奇米影视777四色米奇影院 | 中文字幕中文字幕中文字幕 | 日韩午夜网站 | 成人av资源在线 | 四虎8848免费高清在线观看 | 热久久最新地址 | 亚州国产视频 | 国内精品久久久久影院优 | 亚洲综合色激情五月 | 亚洲色图激情文学 | 91污在线| 亚洲综合精品视频 | 2000xxx影视| 综合久久精品 | 操老逼免费视频 | 久久精品一区二区三区中文字幕 | 玖玖爱国产在线 | 国产精彩视频 | 久99久在线视频 | 麻豆精品在线视频 | 国产不卡在线播放 | 中文字幕在线观看完整 | 亚洲女人av | 日日夜夜天天久久 | 久久久久久高清 | 欧美成人黄 | 在线视频 一区二区 | 成人精品福利 | 69视频在线播放 | 亚洲理论电影网 | av天天澡天天爽天天av | 国产啊v在线 | 亚洲精品乱码久久久久久高潮 | 色五月成人| 91精品国产综合久久婷婷香蕉 | 免费看久久久 | 成人99免费视频 | 欧美人牲 | 久久久久免费精品视频 | 国产做aⅴ在线视频播放 | av先锋影音少妇 | 高潮久久久久久 | av动态图片| 国产xx视频 | 97超碰在线免费观看 | 中文字幕av免费 | 夜夜爽www | 日日夜夜噜 | 亚洲激情综合网 | 欧美在线观看视频一区二区 | 国产成在线观看免费视频 | 国产午夜精品一区二区三区欧美 | 五月综合激情婷婷 | 在线观看一区 | 成人在线观看网址 | 午夜精品一区二区三区四区 | 狠狠操夜夜 | 欧美日韩国产欧美 | 草久在线观看视频 | 亚洲精品成人av在线 | 天天色 天天 | 国产免费a| 日韩免费观看一区二区三区 | 又爽又黄又无遮挡网站动态图 | 日韩专区在线观看 | 日韩久久久久久 | 国产无区一区二区三麻豆 | 91人人网| 在线黄网站 | 成人 亚洲 欧美 | 日韩免费小视频 | 国产不卡免费视频 | 在线免费观看国产精品 | 在线亚洲精品 | 久久久久女人精品毛片九一 | 少妇精品久久久一区二区免费 | 日本黄色免费在线 | 99久久精品国产一区二区三区 | 久久精品99国产国产 | 就要干b| 午夜国产在线 | 久久久久久毛片精品免费不卡 | 二区中文字幕 | 最新国产在线 | 午夜美女福利直播 | 精品一二 | 91精品在线麻豆 | 国内精品久久天天躁人人爽 | 国产亚州av| 夜夜夜夜猛噜噜噜噜噜初音未来 | 国产小视频在线免费观看视频 | 亚洲国产精品一区二区尤物区 | 亚洲最大成人网4388xx | 久草在线精品观看 | 五月宗合网| 久久激情视频 | 日韩在线短视频 | 免费视频久久久 | 亚洲国产精品激情在线观看 | 99精品国产福利在线观看免费 | 国产精品久免费的黄网站 | 色综合久久综合网 | 国产中文字幕视频 | 久久精品久久99精品久久 | 亚洲二区精品 | 91pony九色丨交换 | 蜜桃麻豆www久久囤产精品 | a色视频 | 国产高清专区 | 中日韩三级视频 | 国产成人精品aaa | 日本特黄一级片 | 成年人黄色在线观看 | 超碰免费97| 久久久网页 | 久久精品一区二区 | 亚洲精品99久久久久久 | 日韩高清在线一区二区三区 | 人人超在线公开视频 | 成年人视频在线免费 | 国产精品成人国产乱一区 | 91精品办公室少妇高潮对白 | 欧美日韩在线视频一区二区 | 丁香六月在线 | 中文字幕精品www乱入免费视频 | 久久99深爱久久99精品 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 91麻豆文化传媒在线观看 | 超碰在线网 | 国产成人在线免费观看 | 成人app在线播放 | 草久久久 | 狠狠色丁香久久婷婷综合丁香 | 精品视频免费在线 | 国产中文在线播放 | 在线a视频免费观看 | 日一日操一操 | 精品a级片 | 国产精品福利无圣光在线一区 | 一区二区三区四区五区在线视频 | 亚洲一区二区视频在线 | 天天草天天摸 | 久久免费观看视频 | 免费在线播放黄色 | 日韩精品观看 | 欧美xxxx性xxxxx高清 | 国产视频在线免费观看 | 99热在线国产精品 | 日韩精品资源 | 久久九九影视网 | 91黄色成人 | 亚洲少妇自拍 | 日本少妇视频 | 国产黄色精品视频 | 91九色最新 | 久久久久欧美精品999 | 日韩av有码在线 | 免费美女久久99 | 500部大龄熟乱视频 欧美日本三级 | 国产精品原创在线 | 在线观看国产高清视频 | 国产黄色片免费在线观看 | 久久久久色 | 色婷婷久久久综合中文字幕 | 69国产盗摄一区二区三区五区 | 亚洲精品高清一区二区三区四区 | 久久精品这里都是精品 | 国产午夜一区 | 国产一区二区网址 | 欧美午夜精品久久久久久孕妇 | 丁香六月婷婷开心婷婷网 | av888.com| 一区二区影院 | 超级碰碰碰免费视频 | 九九视频网 | av片在线观看免费 | 天天精品视频 | 日韩精品一区二区三区三炮视频 | 在线观看91精品视频 | 国产精品毛片一区二区在线看 | 蜜臀av性久久久久av蜜臀三区 | 色wwwww | 免费一级片久久 | 天天躁天天狠天天透 | 中文字幕日本电影 | 久久久久久久久精 | 91一区啪爱嗯打偷拍欧美 | 欧洲成人av | 黄色中文字幕 | 91麻豆网 | 中文字幕影片免费在线观看 | 国产精品毛片一区视频 | 婷婷综合导航 | 久久精品—区二区三区 | 天天综合狠狠精品 | 九9热这里真品2 | 精品亚洲在线 | 久久久久久久久久影院 | 人人插人人射 | 美女黄色网在线播放 | 欧美成人精品欧美一级乱 | 激情综合色综合久久综合 | 免费看的国产视频网站 | 日韩精品在线播放 | 久久久久免费视频 | 91精品国产91久久久久久三级 | 国产五月婷婷 | 亚洲成人免费在线观看 | 亚洲免费黄色 | 337p西西人体大胆瓣开下部 | 中文字幕精品一区二区三区电影 | 久久婷婷网 | 成人免费视频视频在线观看 免费 | 天天色天天操综合网 | 亚洲精品视频免费在线 | 西西444www大胆无视频 | 97色在线 | 亚洲国产大片 | 色综合狠狠干 | 午夜成人免费影院 | 在线精品视频在线观看高清 | 日韩高清在线不卡 | 国产97视频在线 | 日韩午夜大片 | 亚洲国产精品va在线看黑人 | 日日爱视频| 91亚洲精品乱码久久久久久蜜桃 | 91综合久久一区二区 | 91麻豆精品国产91久久久使用方法 | 婷婷国产一区二区三区 | 在线看片视频 | 玖玖玖在线观看 | 中文字幕美女免费在线 | 色播激情五月 | 亚洲最新av在线网址 | 亚洲精品色 | 久久精品视频网 | 国产亚洲在线 | 久久久久综合视频 | 久久精品毛片基地 | 色99中文字幕| 日韩电影在线观看一区二区 | 国产精品大片免费观看 | 久久国语露脸国产精品电影 | 国内免费的中文字幕 | 国产一级二级在线 | 色综合久久66 | 97精品视频在线播放 | 国语精品免费视频 | 五月天激情综合网 | 超碰公开在线观看 | 国产在线视频资源 | 久久艹中文字幕 | 国产一区二三区好的 | 99国产精品免费网站 | 日本久久久久久科技有限公司 | 天天鲁一鲁摸一摸爽一爽 | 在线视频成人 | 日韩欧美电影网 | 国产视频在线观看一区二区 | 国产精品久久久电影 | 婷婷五月情 | 亚洲成a人片在线观看网站口工 | 91av视频观看| 亚洲国产精彩中文乱码av | 亚洲精品国产自产拍在线观看 | 91激情视频在线 | aaawww| 亚洲在线不卡 | 9999精品| 岛国精品一区二区 | 看v片| 欧美在线视频精品 | 国产精品视频免费观看 | 久久热亚洲 | 人人澡人人爽 | 96av在线视频 | 亚洲天堂网在线视频 | 欧美日韩国产亚洲乱码字幕 | 久久精品国产亚洲 | 日韩精品一区二区在线观看视频 | 草草草影院 | 婷婷在线网 | 中文字幕国产精品 | 国产99久久99热这里精品5 | 婷婷六月天综合 | 国产精品一区二区av影院萌芽 | 久久综合毛片 | 国产精品视频免费在线观看 | 免费亚洲视频在线观看 | 亚洲一区二区三区在线看 | 精品亚洲男同gayvideo网站 | 国产精品99久久久久久人免费 | 91亚洲精品久久久中文字幕 | 日韩网站视频 | 亚洲成人av一区 | 国产精品福利久久久 | 丝袜美腿在线播放 | 91最新网址在线观看 | 精品国产免费观看 | 亚洲第一伊人 | 国产精品久久久久久久7电影 | 国产福利免费看 | 毛片美女网站 | 波多野结衣小视频 | 国产主播大尺度精品福利免费 | 91视频 - x99av | 在线观看免费视频你懂的 | 中文字幕一区二区三区四区在线视频 | 麻豆精品视频在线 | 午夜精品久久久久久久99水蜜桃 | 在线观影网站 | 成年人在线观看视频免费 | 在线视频电影 | 黄毛片在线观看 | 友田真希x88av | av黄色免费网站 | 一区二区三区动漫 | 久久久网 | 国内精品久久久久久久久久 | 中文字幕一区二区三区四区 | 中文字幕一区二区三区四区久久 | 91看片看淫黄大片 | 中午字幕在线 | 国产精品嫩草影院99网站 | 久久亚洲电影 | 国产淫片免费看 | 黄色日批网站 | 亚洲精品福利视频 | 国产剧情一区二区 | 亚州免费视频 | 香蕉在线视频观看 | 亚洲精品影视在线观看 | 99re6热在线精品视频 | 久久久久 免费视频 | 亚洲在线激情 | 国产在线观看91 | 激情av资源 | 国产精品久久久久久久久久尿 | 国产一二区精品 | av黄色成人 | 91网免费观看 | 中文字幕久久精品一区 | 国产精品区在线观看 | 91视频 - x99av| 综合色婷婷 | 综合网av| 亚洲伊人网在线观看 | 不卡视频一区二区三区 | 欧美一二三专区 | 久久午夜电影网 | av电影在线免费观看 | 99福利片 | 亚洲国产成人精品在线观看 | 日本爱爱免费视频 | 国产xxxxx在线观看 | 午夜精品一区二区三区免费 | 亚洲欧美在线视频免费 | 免费视频久久久久 | 成人av高清在线 | 成人免费看视频 | 精品成人a区在线观看 | 国语精品免费视频 | 精品一区精品二区 | 日日干网址 | 国产手机在线播放 | 国产97在线观看 | 国产黄视频在线观看 | 久久欧美综合 | 免费成人短视频 | a精品视频 | 久久免费美女视频 | 欧美久久久久久久 | 精品久久福利 | 欧美一区二区伦理片 | 色视频国产直接看 | 亚洲视频免费在线观看 | 91av电影在线| 亚洲女欲精品久久久久久久18 | 视频在线精品 | 亚洲精品女 | 深爱开心激情 | 国产高清视频在线播放 | www.久久免费视频 | 精品视频免费看 | 国产精品中文字幕在线 | 日本韩国精品在线 | 丁香视频全集免费观看 | 欧美精品日韩 | 五月激情姐姐 | 国产最新91 | 亚洲综合小说电影qvod | 国产成人精品免费在线观看 | 片黄色毛片黄色毛片 | 国产一区二区精 | 爱色av.com | 天天操天天干天天操天天干 | 久久理论电影 | 在线导航av| 婷婷激情五月综合 | 国产精品免费小视频 | 久久久久成人精品免费播放动漫 | 91久久国产综合精品女同国语 | 婷婷六月久久 | 亚洲精品美女在线 | 欧美激情视频一区 | 国产成人一区二区三区在线观看 | 手机在线中文字幕 | 麻豆精品视频在线观看免费 | 久久免费毛片视频 | 97成人免费视频 | 久久理论视频 | 91精品999| 最近2019中文免费高清视频观看www99 | 国产99在线播放 | 国产精品久久久久久麻豆一区 | 国产二区电影 | 国产精品av在线免费观看 | 又长又大又黑又粗欧美 | 久久免费视频在线观看 | 天天激情站| 人人舔人人干 | 欧美综合在线视频 | 久久成 | 五月天天色| 久久久精品影视 | www.五月婷 | 日韩免费电影 | 久久久亚洲影院 | 韩国av电影在线观看 | av在线免费观看黄 | 久久精品96 | 亚av在线 | 久久九九久久精品 | 国产一级精品在线观看 | 精品久久久久久综合日本 | 欧美黄色高清 | 91探花系列在线播放 | 中国美女一级看片 | 欧美日韩精品久久久 | 69xxxx欧美 | 91最新在线 | 国产精品美女免费视频 | 91精品免费| 免费的成人av | 91一区啪爱嗯打偷拍欧美 | 婷婷丁香在线视频 | 亚洲欧美日韩精品久久久 | 四虎国产永久在线精品 | 操操操日日 | 欧美午夜久久 | 欧美激情xxxx | 青青河边草免费 | 久久都是精品 | 亚洲视频久久久久 | 久久精品韩国 | 天天碰天天操视频 | 97影视| 国产精品第72页 | 国产二级视频 | 国产免费嫩草影院 | 国产福利中文字幕 | av免费黄色| 激情网五月 | 欧美精品中文 | 99久久精品网 | 国产69久久精品成人看 | 久久九九国产视频 | 天堂素人在线 | 久久99日韩| 国产精品国产三级国产aⅴ无密码 | 五月综合网站 | 中文字幕精品三级久久久 | 精品国产一区二区三区久久久蜜月 | 一二区精品 | 日韩欧美一区二区三区在线 | 精品一区二三区 | 国产高清日韩欧美 | 成人不用播放器 | av电影不卡在线 | 黄色在线观看污 | 66av99精品福利视频在线 | 欧美日在线 | 超碰97av在线 | 成人性生交大片免费看中文网站 | 91亚洲在线| 黄色av播放 | 国产成人精品国内自产拍免费看 | 成人小视频在线观看免费 | 久久天天躁夜夜躁狠狠85麻豆 | 亚洲精品小视频在线观看 | 亚洲伦理一区 | 黄色软件在线观看免费 | 免费看一级特黄a大片 | 国产一区二区精品久久 | 国产精品99久久久 | 久久超| 日韩一级黄色片 | 欧美日韩一级久久久久久免费看 | 91亚瑟视频 | 亚洲永久精品视频 | 亚洲欧洲成人精品av97 | 韩国中文三级 | 亚洲涩综合 | 免费在线a| 少妇资源站 | www.91av在线| 在线日本看片免费人成视久网 | 国产拍在线| 国产剧情一区 | 少妇搡bbbb搡bbb搡69 | 99精彩视频| 97超碰资源 | 18国产精品白浆在线观看免费 | 国产黄色精品在线 | 91av视频观看 | 免费日韩 精品中文字幕视频在线 | 久一在线| 久久精品影视 | 欧美老人xxxx18 | 456成人精品影院 | 日韩av在线高清 | 中文国产在线观看 | 久久精品国产精品亚洲精品 | 91麻豆精品国产91久久久久久久久 | 国内精品久久久久久中文字幕 | 久久婷亚洲五月一区天天躁 | 五月开心色 | 麻豆传媒在线视频 | 99精品欧美一区二区三区黑人哦 | 一区二区三区动漫 | www.天天成人国产电影 | 精品亚洲免费视频 | 色就是色综合 | 久久9999久久免费精品国产 | 色av资源网| 91在线视频在线 | 欧美日韩一区久久 | 国产精品国产三级国产aⅴ入口 | 欧美另类交在线观看 | 精品免费99久久 | 久久久久久久久影院 | 最近av在线| 国产精品久久久一区二区 | japanesexxxxfreehd乱熟 | 九九热免费在线观看 | 欧美天堂视频在线 | 就操操久久| 狂野欧美激情性xxxx | 亚洲国产精品视频 | 国产精品一区专区欧美日韩 | 国产一区二区三区网站 | 国产精久久久久久妇女av | 最近中文字幕mv | 激情图片qvod | 麻豆va一区二区三区久久浪 | 久草视频国产 | 国产午夜免费视频 | 麻豆免费在线播放 | 四虎在线观看视频 | 日韩综合色 | 国产精品久久久久久久久久妇女 | 国产高清在线免费观看 | 中文字幕韩在线第一页 | 中文字幕在线观看第一区 | 香蕉视频在线免费 | 久久综合中文色婷婷 | 亚洲 综合 专区 | 日本字幕网 | 黄色av一级 | 久久精品视频在线免费观看 | 成人av在线影视 | 91大神电影 | 黄色片免费电影 | 国产精品网在线观看 | 久久影院中文字幕 | 久久精品99久久久久久2456 | 久久精品成人热国产成 | 亚洲国产电影在线观看 | 国产精品欧美精品 | 中文字幕电影一区 | 久久精品日韩 | 日韩在线观看你懂的 | 四虎影视www| 成人黄在线观看 | 国产成人精品一区二区在线观看 | 五月天色综合 | 国产1级毛片 | 国产高清 不卡 | 91精品在线免费视频 | 三级黄免费看 | 婷婷开心久久网 | 中文字幕一区二区三 | 一二三区高清 | 久久久国产视频 | 一区二区中文字幕在线观看 | 久久涩涩网站 | 国产精品久久久免费 | 波多野结衣亚洲一区二区 | 女人18毛片90分钟 | 日韩精品五月天 | 亚洲天堂在线观看完整版 | 日韩成人在线一区二区 | 狠狠色狠狠色综合日日92 | 中文字幕人成不卡一区 | 亚洲人毛片| 在线亚洲观看 | 99精品欧美一区二区蜜桃免费 | 久久一区二区三区四区 | 在线中文字幕av观看 | 天天操天天干天天干 | 99热国产在线中文 | 国产又粗又猛又爽又黄的视频先 | 特级黄色视频毛片 | 日韩精品中文字幕有码 | 久久成人国产精品一区二区 | 久久久久久久久久久久亚洲 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 天天天天色综合 | 伊人狠狠色 | 91在线蜜桃臀 | 国产免费精彩视频 | 日韩欧美高清在线观看 | 色综合中文综合网 | 国产精品免费观看在线 | 国产日韩欧美在线看 | 美女搞黄国产视频网站 | 天堂在线成人 | 国产三级久久久 | 91插插视频| 在线日韩亚洲 | 欧美精品乱码久久久久久按摩 | 久久婷婷一区二区三区 | 亚洲精品日韩av | 日韩三区在线观看 | 国产亚洲aⅴaaaaaa毛片 | 国产 在线观看 | 我要色综合天天 | 狠狠干夜夜操天天爽 | 欧美日韩国产一二 | 亚洲精品tv | 日本精品中文字幕 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 亚洲va综合va国产va中文 | 99热精品免费观看 | 最近免费中文字幕 | 国产精品av在线免费观看 | 黄色av电影一级片 | 国产一区精品在线观看 | 久久69精品久久久久久久电影好 | 九九九九免费视频 | 日韩免费视频一区二区 | а天堂中文最新一区二区三区 | 五月婷婷综合网 | 91人人澡 | 成人播放器 | 91大神精品视频在线观看 | 国产精品久久久久久久妇 | 99资源网 | 精品超碰| 在线看片日韩 | 国产精品欧美 | 欧美人牲| 中文字幕资源网 | 久草网首页 | 国产精品乱码一区二三区 | av中文字幕亚洲 | 在线观看亚洲视频 | av在线色| 欧美va在线观看 | 久久国产系列 | 96视频在线 | 国内视频在线观看 | 亚洲精品999| 国产精品原创av片国产免费 | 91麻豆看国产在线紧急地址 | 欧美精品三级在线观看 | 亚洲精品综合在线观看 | 久久国语 | 热99久久精品 | 天天草综合网 | 欧美精品二区 | 激情伊人五月天久久综合 | 狠狠色伊人亚洲综合成人 | 久99久中文字幕在线 | 国产精品丝袜 | 日躁夜躁狠狠躁2001 | 在线播放av网址 | 国产日本在线观看 | 欧美特一级片 | 在线导航福利 | 四虎成人精品永久免费av九九 | 久久久久国产精品一区二区 | 91av九色| 日韩伦理一区二区三区av在线 | 亚洲更新最快 | 亚洲一区网站 | 一级免费看视频 | 在线高清| 国产黄色在线网站 | 六月丁香激情综合 | 国产精品女同一区二区三区久久夜 | 午夜精品久久久久99热app | 日韩精品一区二区三区免费观看视频 | 人人干人人上 | 五月婷婷激情网 | 久久久91精品国产一区二区精品 | 国产一级免费播放 | 一本一道久久a久久综合蜜桃 | av品善网 | 国产精品视频内 | 高清av网站 | 久久99免费观看 | 免费在线黄色av | 在线视频 成人 | 午夜视频日本 | 日韩一区正在播放 | 国产成人一区二区三区 | 久久黄色免费 | 久久免费国产精品 | 国产精品视频免费在线观看 | 伊人天堂网| 中文字幕在线视频一区二区 | 中文字幕123区 | 国产91小视频 | 伊人成人精品 | 欧美日韩一区二区三区不卡 | av不卡网站 | 国产资源站 | 精品中文字幕在线 | 日韩欧美一区二区三区黑寡妇 | 香蕉在线影院 | 日日婷婷夜日日天干 | 久久不射电影院 | 欧美天天综合网 | 99久久精品免费看国产四区 | 一区二区三区精品在线 | 麻豆视频91 | 国产视频精选 | 综合网久久 | 婷婷视频在线观看 | 四虎成人精品永久免费av九九 | 国产黄在线 | 一级黄色毛片 | 狠狠干夜夜操 | 久久国产精品系列 | www四虎影院 | 色综合久久66| 日韩精品一区二区电影 | 久草在线中文视频 | 欧美久久久久久久久久 | 黄色成年| 亚洲免费成人av电影 | 日韩欧美99 | 美女一级毛片视频 | 国产综合久久 | 看黄色91| 国产亚洲精品久久久久5区 成人h电影在线观看 | 不卡的av中文字幕 | 久草免费看 | 日本在线观看中文字幕 | 91中文在线视频 | 久草视频99 | 中文字幕在线观看一区二区三区 | 日韩毛片在线播放 | 看黄色91 | 香蕉网在线 | 欧美国产91 | 五月婷婷丁香在线观看 | 久草久热| 成人黄大片 | 国产又粗又长又硬免费视频 | 欧美日韩一区二区三区在线观看视频 | 午夜色影院| 91黄色小视频 | 伊人首页 | 欧美综合色在线图区 | 激情久久五月 | 国产精品一区二区在线观看免费 | 久久九九九九 | 亚洲女人av| 国产首页 | 中文字幕在线播放一区 | 国产成人性色生活片 | 久久人人精 | 国模视频一区二区 | 日韩高清免费在线观看 | 日韩高清一二区 | 性色av免费观看 | 麻豆精品传媒视频 | 免费观看黄色12片一级视频 | 久久久久久久久精 | 国产视频手机在线 | 久久久精品国产免费观看一区二区 | 中文字幕日本电影 | 91女人18片女毛片60分钟 | 亚洲精品一区二区在线观看 | 99视频黄 | 欧美一级日韩三级 | 精品久久久久_ | 婷婷伊人综合亚洲综合网 | 婷婷久久久 | 日日干天天爽 | 中文字幕在线观看你懂的 | 精品一区二区在线观看 | 97精品国产97久久久久久春色 | 欧美疯狂性受xxxxx另类 | 久久国产网站 | 国产精品丝袜久久久久久久不卡 | 97国产大学生情侣白嫩酒店 | 99精品国产99久久久久久97 | 久久官网| 国产视频精品视频 | 成人精品999 | 国产一区二区三区网站 | 97超碰在线资源 | 丁香午夜| 国产精品毛片一区视频 | 日操操| 精品一二三四五区 | 久久超级碰 | 日韩理论电影在线 | 黄色日批网站 | 91久久奴性调教 | 亚洲精品乱码久久久久久久久久 | 久久亚洲欧美日韩精品专区 | 日韩不卡高清视频 | 亚洲成人av在线电影 | 国产又黄又硬又爽 | 国产麻豆精品传媒av国产下载 | 久久国产精品久久久久 | 黄色99视频| 免费三级黄 | 在线播放国产精品 | 日韩精品免费一区二区在线观看 | 久久久久一区 | 久久黄色影视 | 中文字幕久久精品亚洲乱码 | 免费看片网页 | 在线免费成人 | 欧美国产日韩一区二区三区 | 日韩久久激情 | 久久午夜国产 | 日韩电影一区二区在线观看 | 在线观看福利网站 | 天天干天天干天天干天天干天天干天天干 | 国产中文视 | 国产剧在线观看片 | 久草在线费播放视频 | 中字幕视频在线永久在线观看免费 | 天天干天天操天天搞 | 91中文字幕在线观看 | 激情深爱五月 | 一区二区三区免费 | 国产精品视频 | 丰满少妇高潮在线观看 | 99热精品免费观看 | 在线观看国产日韩 | aaa亚洲精品一二三区 | 亚洲少妇久久 | 国产一区国产二区在线观看 | 国产精品福利久久久 | 免费国产一区二区视频 | 国产美女免费 | 久久国产影院 | 欧美在线日韩在线 | 亚洲精品视频免费在线 | 精品黄色片 | 国产91aaa| 激情 一区二区 | 草莓视频在线观看免费观看 | 精品久久久久久亚洲综合网站 | 亚洲精品影院在线观看 | 色综合色综合色综合 | 黄色a在线| 精品一区二三区 | 免费美女久久99 | 成年人免费在线看 | 97综合网 | 日韩欧美在线视频一区二区三区 | 456免费视频 | 亚洲成人二区 | 国产特级毛片aaaaaa | 精品久久久久久亚洲综合网站 | 国产一区免费 | 日韩在线在线 | 亚洲精品三级 | 欧美国产日韩在线观看 | 亚洲精品国产精品国自产在线 | 青青草视频精品 | 黄色一级免费 | 就操操久久 | 色噜噜狠狠狠狠色综合久不 | 国产精品久久久久亚洲影视 | 亚洲精品免费播放 | 国产久视频 | 婷婷在线视频 | 成人av影院在线观看 | 一区二区三区在线影院 | 日韩高清免费观看 | 九九视频在线 | 日本中文一级片 | 欧美高清视频不卡网 | 五月天激情视频 | 国产一级在线免费观看 | 欧美色图88 | 精品九九九 | 大片网站久久 | 最近乱久中文字幕 | 日韩com | 91亚洲成人 | 色综合天天在线 | 精品国产一区二区三区久久久蜜月 | 777xxx欧美 | 91亚·色| 国内免费久久久久久久久久久 | 超碰99在线 | 免费看的黄色小视频 | 五月天综合激情网 | 日日夜夜天天久久 | 久久er99热精品一区二区 | 亚洲第一色 | 在线视频日韩精品 | 国产综合精品久久 | 国产精品久久久久久a | 午夜美女福利直播 | 欧美人操人 | 亚洲欧美日韩一级 | 久久国产片 | 亚洲精品视频久久 | 在线观看色网 | 麻豆 videos| 亚洲精品视频中文字幕 | 久久久久综合精品福利啪啪 | 国产精品免费麻豆入口 | 一区二区精品视频 | 免费观看v片在线观看 | 国产成人一区二区三区在线观看 |