将数组传递给函数的语法错误

时间:2014-03-29 19:55:50

标签: c arrays function syntax

虽然我之前已经在这里搜索了问题的答案,但是这里有新的网站。我想知道是否有人可以给我一点指导和帮助我写一个程序。

应该让用户在数组中输入值并对数组执行操作。但是出于某种原因,当使用函数输入/打印/操作数组时,我在编译程序时会遇到语法错误(使用命令行):

(9):错误C2061:标识符' enterNum'

(9):错误C2059:&#39 ;;'

(9):错误C2059:'输入'

(85):错误C2061:标识符' enterNum'

(85):错误C2059:&#39 ;;'

(85):错误C2059:'输入'

(85):错误C2059:','

(95):错误C2143:缺失')'之前'常数'

(95):错误C2143:缺失' {'之前'常数'

(95):错误C2059:''

(95):错误C2059:')'

它们看似简单的错误,但我不知道自己做错了什么。任何帮助,将不胜感激。以下是我的程序中的错误来自

的代码
#define MAX 100
int ar[MAX];

从第9行开始

array enterNum (int ar[], MAX)
array printArray (int ar[], MAX)
void mean( const int ar[],int n)
void reverseArray( const int ar[], int n)

第85行

array enterNum(int ar[], MAX) // Function for entering all elements of array
{
size_t i;
for( i = 0; i < n; i++) // loop to enter values
{
    printf("ar[%d] = ", i);
    scanf("%d\n", &ar[i]);
}
 }

第95行

void printArray(int ar[], MAX)
{
puts("The entered array is:");

for( i = 0; i < n; i++) //prints all elements of the array
    printf("ar[%d] = %d",i, ar[i]);
}

1 个答案:

答案 0 :(得分:0)

你需要从第9行开始的分号(可能还有其他地方)

array enterNum (int ar[], MAX);
array printArray (int ar[], MAX);
void mean( const int ar[],int n);
void reverseArray( const int ar[], int n);

在某些地方使用MAX也是错误的。每当遇到宏时,预编译器就会通过其值有效地替代宏。在函数原型中使用MAX是错误的。