加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何确定pid_t的最大值?

发布时间:2020-12-16 05:01:49 所属栏目:百科 来源:网络整理
导读:如何可移植地确定pid_t类型的最大值?我的系统上没有PID_MAX常量. (注意,我的意思是数据类型允许的最大值,而不是系统将分配给进程的事实上的最大值.) 使用案例:我正在将用户提供的pid字符串规范转换为pid_t,并希望确保用户的输入不超过类型的容量. 解决方法
如何可移植地确定pid_t类型的最大值?我的系统上没有PID_MAX常量.

(注意,我的意思是数据类型允许的最大值,而不是系统将分配给进程的事实上的最大值.)

使用案例:我正在将用户提供的pid字符串规范转换为pid_t,并希望确保用户的输入不超过类型的容量.

解决方法

POSIX (2008) says:

blksize_t,pid_t,and ssize_t shall be signed integer types.

和:

The implementation shall support one or more programming environments
in which the widths of blksize_t,size_t,ssize_t,and
suseconds_t are no greater than the width of type long.

因此,您可以将用户字符串转换为long,然后使用long pid检查pid_t类型的溢出; .. pid ==(pid_t)pid.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读