错误消息“[错误] invalid types 'int[int]' for array subscript”通常出现在C或C++等编程语言中,表示你试图使用一个不合适的类型(在本例中是int[int])作为数组的下标。这通常意味着在某个表达式中,你错误地将一个整数数组或者类似的结构用作了数组的下标。 2. 理解错误原因 在C和C++中,数组的下标必须是整...
把int duichen(int*a,int);参数中的a改成数组形式。int duichen(int a[10][10],int); 函数实现中的实参也要改成数组形式。main函数中调用这个函数,只要传递数组名称,不要*星号。
max函数中array变量是int*类型,它是int数组bai,后面只能一个下标,写了多处array[I][j],当做二维数组来用。max函数最后一个for循环,for循环应该有三部分,它们以分号隔开,这里只有一部分,没有分号隔开。include <iostream> using namespace std;int max(int (*array)[100],int I,int J,int...
int a[1.2]={0}; int a["123"]={0}; 十九、invalid types 'xxx' for array subscript 数组的下标类型无效 1.和上一个类型很像,只不过是在调用数组的时候犯的 比如: int a[5]={0}; cout<<a[1.2]; //尝试输出下标为1.2的数,然而下标只能是整数 cout<<a["123"]; //尝试输出下标为"123"的数...
for(int i=0;i<n;i++) { outfile2<<" "<<i+1<<'\t'<<f[i].num<<'\t'<<f[i].name<<'\t'<<f[i].chinese<<'\t'<<f[i].math<<'\t'<<f[i].english[i]<<'\t'<<f[i].total<<endl; } outfile2.close(); }陪
函数 void tf(){} 中 你 写了声明: int cdcd,asasasa,a=0; 表明 a 是局部量,是简单的int 型变量,不是 全局量中的 a 数组。接着,出现了 语句: cdcd=a[asasasa]; 这里的 a 却是数组,所以有语法错误。你可以删去 int a=0; 的声明。那么 cdcd=a[asasasa]; 这句...
C++不支持动态数组,比如像Basic中的Redim,Pascal中的SetLength等;C++中的动态数组是以动态内存分配来实现的,即用new和delete动态分配和删除数组空间,所以像int Rev[len];这样的定义是非法的。根据楼主说的main函数中可以编译,那可能是在main函数中,len被赋予了常量,这样C++能够根据语法判断出实际是...
语句错误,字母重复定义,int a,b,c,d,e,f定义了一个a,然后在全局的a[n]同名,main()中用到的a全都是 int 里面的a此处定义出来的。
using namespace std;int max(int (*array)[100],int I,int J,int index,int index1);int temp[100][100],judge[100][100],n;int main( ){ int i,j,arr[100][100],max1=0;cin>>n;for(i=0;i<n;i++)for(j=0;j<n;j++)cin>>arr[i][j];for(i=0;i<n;i++)for...
你的函数原型声明: void ks(int,int); //产生秘钥序列;与实际函数定义用的参数不配套。函数原型声明应当改用:void ks(int S_box[256],int K[]);实际上,你的函数定义写在main() 以前,可以略去函数原型声明。也就是把 void ks(int,int); 删去就可以了。