的规则
C语言
源程序
的编程语法归纳如下:
1,强制性规则
1,一个C语言源程序必须有且只有一个
MAIN函数
.
2,函数名后必须紧跟
圆括号
对,函数体放在右圆括号")"后的花括号对"{}"中.
3,每个程序体(包括函数的函数体,含有多条语句的
选择结构
和
循环结构
中的语句序列)必须用一对花括号括起来.
4,文件包含
预处理命令
,#INCLUDE<*.H应置于源程序的开始位置.
5,语句未尾必须有分号,而预处理命令和函数首部的未尾及右花括号之后不要分号.
6,同一字母大,小写意义不同,关键字和标准
库函数
名必须用小写.
7,变量必须先定义,后使用
8,除已有明显间隔符外,
标识符
,关键字之间必须有至少一个空格9,注解必须包含在"/*
*/符号之间
在Windows下,可以使用一系列API来完成该功能。首先,调用OpenSCManager来获得服务管理器句柄。
然后,通过服务器管理器句柄,调用OpenService来打开指定服务名称的服务句柄。
通过服务句柄,调用ControlService来进行你想要的控制,比如暂停,停止,重启等操作。
最后,记得调用CloseServiceHandle来关闭上述句柄,以释放内核资源。
如下是我从以前的的一段代码中COPY过来的一点示例,该函数是准备删除一个服务,在删除服务之前,停止该服务。
BOOL Uninstall()
{
if ( !IsInstalled() )
return TRUE
SC_HANDLE hSCM = OpenSCManager( NULL, NULL, SC_MANAGER_ALL_ACCESS )
if ( hSCM == NULL )
{
//MessageBox( NULL, _T( "打开服务管理器失败!" ), szServiceName, MB_OK )
return FALSE
}
SC_HANDLE hService = OpenService( hSCM, szServiceName, SERVICE_STOP | DELETE )
if ( hService == NULL )
{
CloseServiceHandle( hSCM )
MessageBox( NULL, _T( "服务不存在!" ), szServiceName, MB_OK )
return FALSE
}
SERVICE_STATUS status
ControlService( hService, SERVICE_CONTROL_STOP, &status )
BOOL bDelete = DeleteService( hService )
CloseServiceHandle( hService )
CloseServiceHandle( hSCM )
if ( bDelete )
{
MessageBox( NULL, _T( "删除服务成功!" ), szServiceName, MB_OK )
return TRUE
}
MessageBox( NULL, _T( "删除服务失败!" ), szServiceName, MB_OK )
//LogEvent(_T("Service could not be deleted"))
return FALSE
}
1、操作系统
C语言最著名的应用领域就是操作系统了,目前所有的操作系统内核都是C语言写的,最著名的就是Unix和Linux了。
2、单片机
由于C语言在位操作上的优越性,在单片机领域,C语言也一直独领风骚,虽然现在出现了一些用其他编程语言操作单片机的方法,但也都是用C语言封装过的,可以说核心还是C语言。
3、驱动程序
无论是操作系统或者单片机,对硬件的驱动除了汇编(比较繁琐),都是用C语言来编写。
4、编译器或解释器
由于C语言效率高的特点,很多编译器也选择的使用C语言来开发。
5、系统服务
由于操作系统都提供了C语言的API,并且C语言的执行效率比较高,所以用C语言来写系统服务是最适合不过的。
6、应用软件
由于C语言没有成熟的开发框架,所以不适合开发大型应用程序。但也有一些对效率要求比较高的程序使用C语言开发,如Git。