小编Mr *_*ser的帖子

C23 自动与 C++11 自动

C23 标准显然引入了使用“auto”关键字进行自动类型推导,请参阅此处,就像 C++11 中一样。然而,似乎存在一些差异。

根据here,https://en.cppreference.com/w/cpp/keyword/auto,在C++11之后,不再auto是C++中的存储持续时间说明符。

然而,我无法轻易找到 C23 的等效声明。在C23中是否仍然auto是C中的存储类说明符?

还可以int auto x = 1;用C23写吗?

编辑:第一个问题的答案是肯定的。但正如 Andrew Henle 在下面的评论中指出的,第二个问题是不同的:

还可以float auto x = 1;用C23写吗?

正如 @AndrewHenle 和 @VladfromMoscow 在标准文档中引用的那样,6.7.1 存储类说明符,第 4 段

auto 仅应出现在具有文件范围的标识符的声明说明符中,或者如果要从初始值设定项推断类型,则应与其他存储类说明符一起出现。

float auto x = 1;如果此声明不在文件范围内,则这似乎不涵盖这种情况。

这句话的解释是什么?

还有一个问题:这句话看起来很混乱,因为我们肯定可以使用 auto 而无需“其他存储说明符”,不是吗?喜欢auto a = 1;

c declaration auto c23

11
推荐指数
1
解决办法
1453
查看次数

如何像普通文件一样读取符号链接的内容而不解析它?

毕竟,符号链接是一个文件。我希望将符号链接作为普通文件逐字节打开,而不解析到它指向的位置。举个例子,git这样做;有关更多详细信息,请参阅此答案/sf/answers/66820281/

我怎样才能用 C 或 Python 来做到这一点?

如果我使用fopenor open,那么符号链接会自动解析。我怎样才能改变这种行为?

c python symlink

0
推荐指数
1
解决办法
595
查看次数

标签 统计

c ×2

auto ×1

c23 ×1

declaration ×1

python ×1

symlink ×1