1. c语言不会只能写DOS程序吧GUI程序可以吗
可以啊,你得分清楚C语言和Turbo C的区别
C语言是一种描述过程的语言,描述程序的语言,语言本身和操作系统和开发环境是两码事。
Turbo C不能支持GUI设计是因为它的库不支持GUI
UNIX和WINDOWS系统都是C语言写的。这个足够说明C能做出很PP的GUI
2. C语言 一个用C语言编写的程序必须有一个并且只能有一个什么函数
就是main()函数
这是C语言的入口函数,所以必须有一个,没有C语言就不知道从哪儿开始执行
main函数只能有一个,因为有好几个的话,C不知道区执行哪个了
3. C语言编写的程序只能放在一个程序文件里吗,如果不是,几个文件怎么联系到一起让这个C语言执行啊
看你用什么IDE(开发工具)了!
windows下,一般常用的是VC VS DEVC++等,这种工具下,建立一个工程,然后一个一个地添加文件到工程中,就可以了,编写完成后,编译运行就可以了,集成开发环境工具会自动将工程中的多个文件链接到一起,生成执行文件。
linux下,只需要将编写好的各个文件用gcc(g++)命令连到一起编译就可以了,如:
gcc -o prg_test test1.c test2.c
这 样就可以生成执行文件prg_test了。
4. c语言中,每行只能写一个语句,对吗不对的话,错在哪里
不对。你可以写一个语句,也可以写多个语句。语句和语句之间,只要有分隔符
分号
就不会错。
5. 学会C语言后有什么用就只能编写一些小程序、制造一些小软件吗
小程序?小软件?大侠,你知道吗?windows内核代码90%都是C语言,windows的MFC只是把C语言的API用C++包装了一下,让别人更方便用而已。知道linux吗?知道uc/os吗?操作系统及很多低层很大一部分都是C语言来实现的,知道编程语言排行吗?C语言是第二大使用的语言,比C++高多了,几十年过去了,它现在还是很光辉灿烂。怎么会只是一些小软件呢?去使用一下Linux吧,看一眼它的源码,它会让你知道更多。只所以你现在看到不少别的语言的程序,是因为用C实现起来不如这些新语言方便(不然出新语言干什么)。
6. C语言只能写控制台程序
不是。
C语言还可以写编写WINDOWS 应用程序。
需要些SDK的知识,windows的实现中基本上都是用的C语言,其各种接口基本上都是原生C语言函数,具体比如SDK用的windows API。
使用纯C语言编写windows程序,工作量将会相当大,下面是一个小例子:
/*
*Thisisasimplewindowsprogram,itdoesnothingbutdrawanellipse.
*WindowsSDK,Win32API,PureC,(NotC++orMFC!!)
*Suxpertatgmaildotcom,2008/8/24
**/
#include<windows.h>
LONGWINAPIWndProc(HWND,UINT,WPARAM,LPARAM);
intAPIENTRYWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,
LPSTRlpszCmdLine,intnCmdShow){
/*TheEntryforwindowsprogram,justlikemain()indos*/
WNDCLASSwc;
HWNDhwnd;
MSGmsg;
wc.style=0;//Classstyle
wc.lpfnWndProc=(WNDPROC)WndProc;//Windowprocereaddress
wc.cbClsExtra=0;//Classextrabytes
wc.cbWndExtra=0;//Windowextrabytes
wc.hInstance=hInstance;//Instancehandle
wc.hIcon=LoadIcon(NULL,IDI_WINLOGO);//Iconhandle
wc.hCursor=LoadCursor(NULL,IDC_ARROW);//Cursorhandle
wc.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);//Backgroundcolor
wc.lpszMenuName=NULL;//Menuname
wc.lpszClassName="WinSDKtest";//WNDCLASSname
RegisterClass(&wc);
hwnd=CreateWindow(
"WinSDKtest",//WNDCLASSname
"SDKApplication",//Windowtitle
WS_OVERLAPPEDWINDOW,//Windowstyle
CW_USEDEFAULT,//Horizontalposition
CW_USEDEFAULT,//Verticalposition
CW_USEDEFAULT,//Initialwidth
CW_USEDEFAULT,//Initialheight
HWND_DESKTOP,//Handleofparentwindow
NULL,//Menuhandle
hInstance,//Application'sinstancehandle
NULL//Window-creationdata
);
ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0)){
TranslateMessage(&msg);
DispatchMessage(&msg);
}
returnmsg.wParam;
}
LRESULTCALLBACKWndProc(HWNDhwnd,UINTmessage,WPARAMwParam,
LPARAMlParam)
{
/*...*/
PAINTSTRUCTps;
HDChdc;
switch(message){
caseWM_PAINT:
hdc=BeginPaint(hwnd,&ps);
Ellipse(hdc,0,0,800,600);
//
EndPaint(hwnd,&ps);
break;//Someoneliketowritereturnhere.
caseWM_DESTROY:
PostQuitMessage(0);
break;
default:
returnDefWindowProc(hwnd,message,wParam,lParam);
}
return0;
}
基本过程就是直接调用windows提供的API函数,完成从窗口创建,显示等界面功能到深层的文件操作,注册表等甚至windows内核调试等高级功能。
7. 任何程序都可以用c语言来写对吗
是也不是。
C是依赖编译器的,没有编译器,就不能在目标平台上运行。
一般不管多复杂的程序,只要有“足够”的时间和“足够”的人力,就可以编写出需要的程 序。
但是有些时候,因为C的一些原因,有些程序是不会用C写的,因为用C写可能会省下几千万的一些机器,却可能要多投入几个亿的开发和维护的成本。
所以在很多时个,C是不能用来做一些程 序的,不是因为本身不能,而是划不来。
但是用户端的程序,用C写的概率会高一些,如果目标用户是一百万,如果因为用了更高级的语言需要在设备成本上增加一百块,那么整体成本就要增加一个亿,而且最终用户可能不会愿意为这一百块买帐。
8. c语言判断 1.c程序书写时,一行只能写一个语句 2.在一个文件中有且仅有一个main函数 3.
1,没有,可以写多语句,但要用分号隔开
2,是,不能有多个,否则不知道从哪里开始,应为一个程序要从main函数开始
3,不一定是,可以是存一个一个的字符