| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3452 人关注过本帖
标题:[求助]C语言程序如何调用操作系统提供的系统调用函数
只看楼主 加入收藏
huangyinghua
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-2-9
收藏
 问题点数:0 回复次数:7 
[求助]C语言程序如何调用操作系统提供的系统调用函数
大家好!我学了C语言基础知识,还学了操作系统的一些基础知识,有个问题不懂,操作系统中说的系统调用和C语言中的库函数是不同的,那么C语言程序如何才能调用操作系统中提供的系统调用函数呢?为什么C语言编程的书都没有讲到?C语言编程的书都只讲到如何调用C语言的库函数而已,请大家给指点,谢谢了!
搜索更多相关主题的帖子: C语言程序 操作系统 函数 基础 
2007-02-09 20:22
corrupt
Rank: 2
等 级:新手上路
威 望:3
帖 子:535
专家分:0
注 册:2004-9-29
收藏
得分:0 
你说的是 api函数吧??  包括 头文件 #include <windows.h>

2007-02-11 10:03
huangyinghua
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-2-9
收藏
得分:0 

corrupt谢谢你,但我还不是很明白,操作系统的系统调用都是api函数吗?另外你能不能取一个具体的函数调用的例子,我想看看具体的书写格式是怎样的?还有,是不是每种语言程序(如B语言、C++语言等)中调用api函数的书写格式都一样的呢?谢谢了!

2007-02-13 19:36
bluesky1322
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2006-10-11
收藏
得分:0 

应该不同的操作系统的系统函数不一样,不过WINDOWS XP下是调用API,头文件就是include<windows.h>.
API里面有成千上万的函数呢,如果是编写的控制台界面的话,我想控制台函数调用的挺多,我就是这样的。
用的时候只需要在程序中调用函数就行了,比如(C++编译环境为VC6.0):

#include<windows.h>

void SetConsole()
{
CONSOLE_SCREEN_BUFFER_INFO bInfo;//窗口缓冲区信息
GetConsoleScreenBufferInfo (hOut,&bInfo);//获取窗口缓冲区信息

//SetConsoleOutputCP(437);
SetConsoleTitle ("This is the console title.");//设定窗口标题
COORD size = {80,25};
SetConsoleScreenBufferSize (hOut,size);//设定缓冲区大小为80*25
SetConsoleTextAttribute(hOut,371);

COORD posBackground = {0,0};
//背景设置为蓝底暗白文字
int i;
for(i=0;i<25;i++)
{
FillConsoleOutputAttribute(hOut,340,80,posBackground,NULL);
posBackground.Y ++;
}

}
void mian()
{
HADLE hOut;//输出设备句柄
hOut = GetStdHandle (STD_OUTPUT_HANDLE);//获得标准输出设备句柄
SetConsole();
}

其中:CONSOLE_SCREEN_BUFFER_INFO是控制台屏幕缓冲区信息结构体
COORD是屏幕坐标结构体
SetConsoleScreenBufferSize()等都是一些操作函数,具体的可以看看MSDN,
函数的意思一看就知道了。

[此贴子已经被作者于2007-2-14 23:41:03编辑过]


2007-02-14 23:36
huangyinghua
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-2-9
收藏
得分:0 
谢谢bluesky1322和corrupt!
唉呀救命,真是晕啊,为什么我学完了相关的大学课程怎么还是看不太懂你们上面所写的,什么“句柄”“窗口缓冲区”“信息控制台屏幕缓冲区信息结构体”?这些名词都没见过,我想肯定是我那些课程太老土了,还麻烦两位给推荐一两本好书,适合我这样的初学者的,一定要浅显易懂的,但内容也要全面,别象我那些书连怎么调用函数都不介绍,害我好茫然,拜托两位了,我很想学些实用的东西,知道这方面的人士也请多给指点,谢谢了!
2007-02-17 14:57
dlcdavid
Rank: 3Rank: 3
来 自:成都
等 级:新手上路
威 望:6
帖 子:193
专家分:0
注 册:2005-12-23
收藏
得分:0 
MFC window程序设计 第2版,,

为了C++,我放弃了课本
为了高考,我又放弃了C++
现在而今眼目下,我能做什么?www.
2007-02-20 21:25
bluesky1322
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2006-10-11
收藏
得分:0 
对啊,论坛里有一本由iteer上传的“Windows程序设计(第五版)电子版”,看看这里


[URL=http://bbs.bc-cn.net/viewthread.php?tid=87361&star=at#]http://bbs.bc-cn.net/viewthread.php?tid=87361&star=at#[/URL]

[此贴子已经被作者于2007-2-21 14:55:35编辑过]


2007-02-21 14:55
huangyinghua
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-2-9
收藏
得分:0 
谢谢大家!
2007-02-24 19:43
快速回复:[求助]C语言程序如何调用操作系统提供的系统调用函数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020173 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved