#include<stdio.h>
main(){
int MaxSubSequenceSum(int A[],int N);
int M=8,a;
int B[8];
for(int i=0;i<M;i++){
scanf("%d",&B[i]);
}
a=MaxSubSequenceSum(B[8],M);
printf("%d",a);
}
int MaxSubSequenceSum(int A[],int N){
int ThisSum,MaxSum,i,j;
MaxSum=0;
for(i=0;i<N;i++)
{
ThisSum=0;
for(j=1;j<N;j++)
{
ThisSum+=A[j];
if(ThisSum>MaxSum)
MaxSum=ThisSum;
}
}
return MaxSum;
}
錯誤:
9 25 C:\Users\92906\Desktop\C\未命名1.cpp [Error] invalid conversion from 'int' to 'int*' [-fpermissive]
3 6 C:\Users\92906\Desktop\C\未命名1.cpp [Error] initializing argument 1 of 'int MaxSubSequenceSum(int*, int)' [-fpermissive]
uj5u.com熱心網友回復:
a=MaxSubSequenceSum(B[8],M); 紅色去掉uj5u.com熱心網友回復:
謝謝,程式能運行了,那個錯誤是什么意思呢,能不能解釋一下啊uj5u.com熱心網友回復:
invalid conversion from 'int' to 'int*' [-fpermissive]無效的轉換:從int到int *
B[8]是一個陣列成員,是int型,
形參int A[],A是一個陣列,相當于int *A,是int *型別,所以實參也必須是指標或者陣列名(陣列名做引數退化為指標,就是陣列的首地址)
uj5u.com熱心網友回復:
形參期待int *型別,而實參為int型,所以是無效的轉換。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/54928.html
