① VisualStudio怎么用C语言进行图形编程啊
新建一个项目、选择win32项目,应用程序为windows程序,附加选项为空;在源代码目录中添加一个后缀为.c的源文件。接下来就可以写C代码了。
用c语言中通过调用windows的api函数,来显示窗口、菜单、滚动条、屏幕输出。
在《windows程序设计》一书中就有一个例子,显示一个标准的windows窗口,并在绘图区显示一个字符串。代码如下:
#include<windows.h>
LRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM);
intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,PSTRszCmdLine,intiCmdShow)
{
staticTCHARszAppName[]=TEXT("HelloWin");
HWNDhwnd;
MSGmsg;
WNDCLASSwndclass;
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=szAppName;
if(!RegisterClass(&wndclass))
{
MessageBox(NULL,TEXT("ThisprogramrequiresWindowsNT!"),szAppName,MB_ICONERROR);
return0;
}
hwnd=CreateWindow(szAppName,
TEXT("TheHelloProgram"),
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL);
ShowWindow(hwnd,iCmdShow);
//UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
returnmsg.wParam;
}
LRESULTCALLBACKWndProc(HWNDhwnd,UINTmessage,WPARAMwParam,LPARAMlParam)
{
HDChdc;
PAINTSTRUCTps;
RECTrect;
switch(message)
{
caseWM_CREATE:
//PlaySound(TEXT("C:\WindowsNotify.wav"),NULL,SND_FILENAME|SND_ASYNC);
return0;
caseWM_PAINT:
hdc=BeginPaint(hwnd,&ps);
GetClientRect(hwnd,&rect);
DrawText(hdc,TEXT("Hello,Windows98!"),-1,&rect,DT_SINGLELINE|DT_CENTER|DT_VCENTER);
EndPaint(hwnd,&ps);
return0;
caseWM_DESTROY:
PostQuitMessage(0);
return0;
}
returnDefWindowProc(hwnd,message,wParam,lParam);
}
复制到刚才的.c文件中即可以编译运行。
② 怎么用C画图
在C语言中画图,可以使用Turbo C提供的绘图函数,或者在Visual C++中通过手动添加绘图函数库来实现。
在Turbo C中绘图: 使用line函数:该函数用于绘制一条从点到点的直线。通过指定起点和终点的坐标,可以在屏幕上绘制出直线。 使用lineto函数:该函数从当前光标位置绘制一条直线到指定的点。这允许从当前位置开始绘制直线,而无需指定起点。 使用linerel函数:该函数从当前光标位置绘制一条直线,终点的位置由相对于当前位置的增量dx和dy确定。这提供了基于相对位置的绘图能力。 使用circle函数:该函数用于绘制一个完整的圆,圆心坐标为,半径为radius。通过指定圆心和半径,可以在屏幕上绘制出圆形。 使用arc函数:该函数用于绘制一段圆弧线,圆心坐标为,半径为radius,从指定角度stangle开始,到指定角度endangle结束。这允许绘制圆的一部分,而不是整个圆。
在Visual C++中绘图: 由于Visual C++并未内置上述绘图函数及相关的头文件,因此需要手动添加。 首先,下载并链接包含绘图函数的头文件和实现代码,如DrawingFunctions.h和DrawingFunctions.cpp。 将这两个文件添加到VC工程中,确保它们被正确编译和链接。 在工程的链接器设置中,添加DrawingFunctions.lib作为附加依赖项。 通过这些步骤,就可以在VC中使用与Turbo C类似的绘图函数来绘制图形了。
请注意,具体的绘图函数和用法可能因环境和库的不同而有所差异。在实际应用中,应根据所选的开发环境和库文档进行相应的调整和优化。