将指向文字的指针直接传递给函数

时间:2018-05-10 12:57:17

标签: c

给出以下C代码:

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


int main(void)
{
    int i;

    i = 10;
    calc(&i);
}

是否可以摆脱设置i并直接将10传递给功能calc?如果是的话,怎么办呢?

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

calc( (int *) 10);

1 个答案:

答案 0 :(得分:0)

不,没有指向C中常量的指针。

UPD:但似乎有a trick使用 struct 复合文字语法(感谢@ antti-haapala为了纠正)。试试这个:

calc(&(int){10});