在編寫C/C++習作時,若能多開發一些趣味程序,不僅能強化編程能力,還能提升學習興趣,更便於在師長同儕面前展示成果。本書前幾章已提出構想:在Windows SDK API基礎上封裝一套函數庫,命名為「C語言學習庫」(C-Language Study Library,簡稱CSL或csl)。這個庫將封裝所有Windows下SDK繪圖的繁瑣細節,提供類似DOS時代編程的簡易介面,可謂兩全其美。如今,這個介面正式誕生,C/C++學習的新紀元來臨!以下以Dev-C++為例說明使用方法。
(詳細內容請參閱書籍附錄)
本書涉及的部分程序提供原始碼與可執行檔下載(文末整體打包)。以下展示八個經典實例:
打包檔名:test01.rar
#include "csl.h"
CSL_BEGIN_DOS
void cslMain() {
initgraph(0, 800, 600);
outtextxy(300, 300, "大家好!這就是C語言學習庫程序!");
getch();
}
打包檔名:test02.rar
#include "csl.h"
CSL_BEGIN_DOS
void DrawCommand(int left, int top, int right, int bottom, int i) {
if (i) setcolor(WHITE); else setcolor(DARKGRAY);
line(left, top, left, bottom);
line(left, top, right, top);
if (i) setcolor(LIGHTGRAY); else setcolor(BLACK);
line(left+1, top+1, left+1, bottom-1);
line(left+1, top+1, right-1, top+1);
if (i) setcolor(DARKGRAY); else setcolor(LIGHTGRAY);
line(left+1, bottom-1, right-1, bottom-1);
line(right-1, top+1, right-1, bottom-1);
if (i) setcolor(BLACK); else setcolor(WHITE);
line(left, bottom, right, bottom);
line(right, top, right, bottom);
bar(left+2, top+2, right-2, bottom-2);
}
void cslMain() {
initgraph(0, 800, 600);
setbkcolor(LIGHTGRAY);
cls();
flush(1); // 快速刷新屏幕,CSL特有函數
// 繪製按鈕控件
DrawCommand(100, 200, 360, 260, 1);
DrawCommand(380, 200, 640, 260, 0);
settextsize(2, 2); // 設置字體大小,CSL特有函數
// 字體特技:凹字體
setcolor(DARKGRAY);
outtextxy(120, 210, "激活的按鈕控件");
setcolor(WHITE);
outtextxy(121, 211, "激活的按鈕控件");
// 字體特技:凸字體
setcolor(WHITE);
outtextxy(400, 210, "按下的按鈕控件");
setcolor(DARKGRAY);
outtextxy(401, 211, "按下的按鈕控件");
setcolor(BLACK);
outtextxy(100, 300, "大家好!學習使用CSL庫編寫C/C++習作。");
getch();
}
打包檔名:demo.rar
打包檔名:pdfj.rar
打包檔名:music.rar
程序截圖略
打包檔名:rus.rar
打包檔名:ttnb.rar
特別說明:此程序非作者原創,乃1997年世界編程大賽首獎作品。
打包檔名:asm3d.rar
本文出自「編程浪子朱雲翔」博客,轉載請聯系作者!