c - 多个函数调用?
问题描述
嗨,对编程非常陌生。只是想知道例如我是否有一个名为 void blink(void) 的函数。如果我写一个代码
2 * blink();
是一样的吗
blink();
blink();
?
解决方案
我不知道您从哪里获取此语法,但它不会调用该函数两次。它将函数返回值乘以 2。
int blink(void)
{
return 5;
}
int main(void)
{
int result;
result = 2 * blink();
printf("%d\n", result);
}
https://godbolt.org/z/4nrGj3M6W
如果blink
有void
返回类型,它将简单地不编译。
另一种使用函数指针调用函数的方式:
void blink(void)
{
printf("BLIMK!!!\n");
}
void callMultiple(void (*func)(void), size_t ntimes)
{
while(ntimes--) func();
}
int main(void)
{
size_t times;
if(scanf("%zu", ×) == 1)
{
callMultiple(blink, times);
}
}
推荐阅读
- azure - Azure CI/CD 期间的 local.settings.json 转换
- excel - 假设日期是连续的,如何修复 Excel
- mysql - 聚合查询以进行分析
- regex - 通过 Powershell 从文本文件中提取字符串
- javascript - 邮递员:使用 application/x-www-form-urlencoded 作为内容类型发送 XML 作为正文
- python - 如何在 pytest 中进行自定义比较?
- reactjs - React - 不要在危险的SetInnerHTML 中解析某些 HTML 标签
- laravel - laravel 计划 Monthly() 何时准确运行?
- python - Apache在重定向时显示代码而不是网页
- javascript - 如何在 Node.js 中使用“async/await”和“promises”进行同步执行?