Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 通过前向声明而不使用头链接源文件_C - Fatal编程技术网

C 通过前向声明而不使用头链接源文件

C 通过前向声明而不使用头链接源文件,c,C,目标是编写一个由两个源文件组成的程序。第一个(Main.c)包含Main()函数,并给变量i一个值。第二个源文件(Print.c)将i乘以2并打印它。c包含函数Print(),可以从main()调用该函数。输出打印一个巨大的数字,甚至不能被指定的整数整除。我该如何解决这个问题 我的主要工作 #include <stdio.h> int i; void print(); int main() { int i = 10; print(); return 0;

目标是编写一个由两个源文件组成的程序。第一个(Main.c)包含Main()函数,并给变量i一个值。第二个源文件(Print.c)将i乘以2并打印它。c包含函数Print(),可以从main()调用该函数。输出打印一个巨大的数字,甚至不能被指定的整数整除。我该如何解决这个问题

我的主要工作

#include <stdio.h>

int i;
void print();

int main()
{
    int i = 10;
    print();
    return 0;
}
#包括
int i;
作废打印();
int main()
{
int i=10;
打印();
返回0;
}
我的印刷品c:

#include <stdio.h>

void print(int i)
{
    printf("%d", 2 * i);
}
#包括
作废打印(int i)
{
printf(“%d”,2*i);
}

尝试将
i
main
传递到
print
功能
print(i)
还将print函数的原型更改为
void print(int i)
void print(int i)
声明一个名为
print
的函数,该函数使用一个
int
参数
void print()
声明一个名为
print
的函数,该函数接受数量不确定的参数。标题似乎完全无关。函数声明与定义不匹配。调用无效,因为它没有传递预期的参数。谢谢,删除转发声明并将i添加到调用中修复了它。我是C语言的新手,仍然在掌握基本知识。哦,好的,完全解决了,谢谢。我认为它是有效的,因为VS认为它是外部的,并且被推了过去。