gpt4 book ai didi

c++ - 初始化 itimerspec 结构 - memset 是一个不错的选择吗?

转载 作者:行者123 更新时间:2023-11-28 07:15:35 25 4
gpt4 key购买 nike

几年前,我问了一个关于 how to initialize a timespec struct 的问题使用最少的代码行到归零状态(纳秒和秒等于零)。

许多回复告诉我不要使用 memset,因为这不是跨平台兼容的,并且可能会出现许多其他问题。于是,我采用了以下方式:

struct timeval freshStruct = struct timeval){0};

多年以后,我现在想要初始化一个 itimerspec 结构,其中包含两个 timespec 结构。一种方法是让我执行以下操作:

struct itimerspec alarmTimeFormatted;
alarmTimeFormatted.it_interval = (struct timespec){0};
alarmTimeFormatted.it_value = (struct timespec){0};

我看到其他answers here on StackOverflow其中显示使用 memset 在一行中初始化 struct itimerspec this。

现在我很好奇——itimerspec 结构是否有什么不同,或者这些只是错误的答案?有什么 Eloquent 方法可以仅用一行来初始化外部/内部结构吗?

谢谢

最佳答案

这仍然是不好的做法。 Erik 在评论中给出了一个可能的解决方案,但通常在 C++ 中我们使用构造函数:itimerspec::itimerspec() : it_interval { 0 }, it_value { 0 } {/***/}

关于c++ - 初始化 itimerspec 结构 - memset 是一个不错的选择吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20275874/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com