c - 在函数中使用 printf 返回 void

标签 c function declaration definition

当我运行此代码时,出现错误“省略参数名称”,我怀疑这是因为我使用 printf 在 void 返回函数内返回 int 类型。

*注意:我编写此代码是为了检查指针能否成功更改全局变量的值?

#include <stdio.h>

int a = 5 ; 

void call(int)
{
    printf("%d\n",a); 
}

int main()
{
    int* p = &a; 
    call(a);
    *p = 6 ;
    printf("%d\n",a);
    printf("%d\n",*p);
    call(a); 
}

最佳答案

这不是 printf,而是你调用“call”的方式。

如果您不需要在调用中使用该参数,则应该是

#include <stdio.h>

int a = 5 ; 

void call()
{
    printf("%d\n",a); 
}

int main()
{
    int* p = &a; 
    call();
    *p = 6 ;
    printf("%d\n",a);
    printf("%d\n",*p);
    call(); 
}

关于c - 在函数中使用 printf 返回 void,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40704591/

相关文章:

javascript - 为什么点表示法对于函数变量输入参数 Javascript 无效

c - 变量/函数可以声明任意次,但只能定义一次

c - 指针数组的段错误

调用不带参数的带参数的C函数

c - 如何将 int64 位数据转换为 uint 32 位数据。 C 运算符不得用于 64 位数据

r - 如何使用 formattable 和 color_tile 有条件地为表元素着色?

c++ - 如何将字符串从 make 文件传递​​到 C++ 程序

php - 为什么“print”和 "echo"函数不需要括号

在结构初始化中调用函数

javascript - 定义与初始化