Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.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++ 类型为“的参数”;int";与类型为“的参数不兼容”;int";_C++ - Fatal编程技术网

C++ 类型为“的参数”;int";与类型为“的参数不兼容”;int";

C++ 类型为“的参数”;int";与类型为“的参数不兼容”;int";,c++,C++,对编程非常陌生,作为教程被要求在程序代码中查找错误。在试图修复它的过程中,我一直在为标记为传递单个元素的行获取“类型为'int'的参数与类型为'int'的参数不兼容”的行。还没有学习指针,也不了解函数是如何工作的,所以其他地方可能会有错误 #include <iostream> using namespace std; void functionA ( int num[] ) ; void functionB ( int newnumbers[] ) ; void function

对编程非常陌生,作为教程被要求在程序代码中查找错误。在试图修复它的过程中,我一直在为标记为传递单个元素的行获取“类型为'int'的参数与类型为'int'的参数不兼容”的行。还没有学习指针,也不了解函数是如何工作的,所以其他地方可能会有错误

#include <iostream>
using namespace std;

void functionA ( int num[] ) ;
void functionB ( int newnumbers[] ) ;
void functionC ( int newnumbers[] ) ;

void main ()
{
    int numbers[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } ;
    int i;

    for ( i=0; i<10; i++ )
        functionA ( numbers[i] ) ;          // passing individual elements

    cout << "\n\n" ;
    functionB ( numbers ) ;                 // passing the whole array
    functionC ( numbers ) ;                 // passing the whole array

    cout << "\n\n" ;
}

void functionA ( int num[] )
{
    cout << num << " " ;
}

void functionB ( int newnumbers[] )
{
    for ( int i=0; i<10; i++ )
        newnumbers[i] = newnumbers[i] * 5 ;
}

void functionC ( int newnumbers[] )
{
    for ( int i=0; i<10; i++ )
        cout << newnumbers[i] << " " ;
}
#包括
使用名称空间std;
无效函数(int num[]);
void函数b(int newnumbers[]);
void函数c(int newnumbers[]);
空干管()
{
整数[10]={1,2,3,4,5,6,7,8,9,10};
int i;

对于(i=0;i您正在传递
numbers[i]
,这是一个
int
值,而您的函数参数需要一个
int
数组

将函数定义更改为just
void function(int num)
,您应该能够输出传递的
int
元素

希望这能帮助您看到
int
int[]
之间的区别

void functionA ( int num[] )
{
    cout << num << " " ;
}
还要注意,您将
main
声明为
void main()
,但需要声明为返回
int

for ( i=0; i<10; i++ )
        functionA ( numbers[i] ) ;
functionA需要一个整数数组作为输入。您正在传递一个整数,因此它失败

我怀疑您的编译器错误不是“int与int不兼容”,而是“int与int*不兼容”。*很重要,因为它指定了指针


根据您试图执行的操作,您必须更改functa以获取int,而不是int[](在这种情况下,它会打印传递给它的数字),或者将“numbers”而不是“numbers[i]”传递给它,并更改functa以迭代数组(例如,使用for循环).

你说得对,我错过了最后一行的*号。谢谢!
for ( i=0; i<10; i++ )
        functionA ( numbers[i] ) ;
void functionA ( int num[] )