Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/131.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';)和模块_C++_Pointers_Module - Fatal编程技术网

C++ 错误一元';的无效类型参数*';(具有';int';)和模块

C++ 错误一元';的无效类型参数*';(具有';int';)和模块,c++,pointers,module,C++,Pointers,Module,我尝试使用带有指针和模块的向量。 我对c++有这个问题: 在main.cpp中: #include<iostream> using namespace std; #include "Funcion1.hpp" int main (int argc, char *argv[]) { int vec[20]; int *punteroV = &vec[0]; for(int i = 0;i < 10;i++){

我尝试使用带有指针和模块的向量。 我对c++有这个问题: 在main.cpp中:

    #include<iostream>
    using namespace std;
    #include "Funcion1.hpp"

int main (int argc, char *argv[]) {
    int vec[20];
    int *punteroV = &vec[0];
    for(int i = 0;i < 10;i++){
        cout<<"Ingrese numero: ";
        cin>>vec[i];
    }
    cout<<FUN(*punteroV) << endl;
    return 0;
}
编译器生成一个错误:

  error invalid type argument of unary '*' (have 'int')

此错误的含义是什么?

在FUN函数中,您有以下行:

   if(*(punteroV + i) > *(punteroV + j))
您试图对一个整数的引用执行指针算术,然后像对待
int*
一样对待它。您不能直接对该引用执行该操作。要对引用进行计算,您必须首先将其地址如下所示:

   if(*(&punteroV + i) > *(&punteroV + j)){

这意味着
punterOv+i
int
,而不是指针。的可能重复项是int
*punterOv=&vec[0]中的指针
@SantiagoSantosisma这是一个不同的
punterOv
变量,而这不是错误消息所指向的那一行。你在
main()
中的指针与
int
FUN
()中被称为
punterOv
int
完全无关,所以
punterOv+i
,在
FUN
()中,是一个
int
。查看C++书中的章节,解释引用是什么,以及如何使用它们。
   if(*(punteroV + i) > *(punteroV + j))
   if(*(&punteroV + i) > *(&punteroV + j)){