将指向文字的指针直接传递给函数[复制]

问题描述 投票:3回答:1

这个问题在这里已有答案:

给出以下C代码:

void calc(int *value)
{
   // do something with value
}


int main(void)
{
    int i;

    i = 10;
    calc(&i);
}

是否有可能摆脱设置i并直接通过10功能calc?如果是,怎么办呢?

我的想法(不起作用)的例子:

calc( (int *) 10);
c
1个回答
0
投票

不,在C中指向常量是不可能的。

UPD:然而似乎有使用a的a trick 结构 复合文字语法(感谢@ antti-haapala进行修正)。试试这个:

calc(&(int){10});
© www.soinside.com 2019 - 2024. All rights reserved.