gpt4 book ai didi

c++ - 在C中的函数参数中创建数组

转载 作者:太空宇宙 更新时间:2023-11-04 01:32:26 25 4
gpt4 key购买 nike

这在 C 或 C++ 中可能吗?我有一个带有以下声明的函数:

int foo(double*)

我正在尝试做这样的事情:

foo([] = {1.0, 2.0, 3.0, 4.0});

我知道我可以单独创建一个数组,但我很好奇我是否可以那样做。

谢谢。

最佳答案

在 C 中:使用 C99 复合文字:

foo((double[]){ 1.0, 2.0, 3.0, 4.0 });

在 C++ 中:(我讨厌“C/C++”问题!)- 我尝试了这个并以类似的方式使用了 C++11 初始化列表。但是,我不确定这是否合法或导致未定义的行为:

foo(&(std::vector<double> { 1, 2, 3, 4 })[0])

谁能证实这一点? (在没有警告的情况下编译,运行......不过这并不意味着任何东西,。)

关于c++ - 在C中的函数参数中创建数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20435371/

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