免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5311 | 回复: 6
打印 上一主题 下一主题

getpid()的返回值问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-15 10:57 |只看该作者 |倒序浏览
getpid()的返回值是pid_t类型的,那么prinf("%d",getpid*());为什么可以使用%d对它进行格式化输出?
还有就是系统以_t结尾的原始数据类型,如何和现有的数据类型对应?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2005-12-15 11:02 |只看该作者
如果你编译 的时候加上-Wall 会给你警告的。
系统的设计者想隐藏各种某些函数的返回类型。
有些定义可以在 sys/types中找到。。无非是一些define,typedef。

论坛徽章:
0
3 [报告]
发表于 2005-12-15 11:08 |只看该作者
thanks!

论坛徽章:
0
4 [报告]
发表于 2005-12-15 11:11 |只看该作者
加了-Wall出现了下面的提示:
warning: implicit declaration of function `getpid'

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
5 [报告]
发表于 2005-12-15 11:21 |只看该作者
这个警告 表明 你没有加 包含getpid函数声明的头文件。

论坛徽章:
0
6 [报告]
发表于 2005-12-15 15:49 |只看该作者
C 语言中 typedef 并不是指定一个新类型,而只是给一个现有类型一个新的名字罢了,编译时并不进行区分。因此
  1. typedef int pid_t;
复制代码
之后,任何参数类型为 int 的地方传递一个声明为 pid_t 类型的参数,完全不会导致任何问题。

论坛徽章:
0
7 [报告]
发表于 2005-12-15 16:20 |只看该作者
man getpid
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP