【问题标题】:Error expected expression before ")" token and C error - error: expected expression before ']' token")" 标记和 C 错误之前的错误预期表达式 - 错误:']' 标记之前的预期表达式
【发布时间】:2014-02-22 12:04:54
【问题描述】:

这是我的代码:

#include <stdio.h>
#include <conio.h>
#define MAX 10;

int rradhe[MAX];
int koka = -1;
int bishti = -1;

void shto_djathas()
{
int element;

if ((koka == 0 && bishti == MAX -1 )||koka ==  bishti +1)
{
    printf("\nGjendje Overflow");
    getch ();int rradhe[MAX];
int koka = -1;
int bishti = -1;
    return;
}
if (koka == -1)
{
    koka = 0;
    bishti = 0;
}
else
    if (koka == MAX -1)
    bishti = 0;
else
    bishti = bishti + 1;
    printf ("\n Shtypni elementin qe doni te shtoni ");
    scanf ("%d", &element);
}

void main () {
    int c;
while(1){
printf("---------------------------");
printf("\nDetyre Kursi - Ivi Hysenbelli , Olsi Lala");
printf("\n 1 - Shtoni element ne rradhe"); // elementet do te shtohen nga e djatha
printf("\n 2 - Hiq element nga e djatha(Nga fillimi)");
printf("\n 3 - Hiq element nga e majta(Nga fundi)");
printf("\n 4 - Afisho rradhen");
scanf("%d",&c);
switch (c) {

case 1:
    shto_djathas();
    break;



}

}
}

我不明白为什么会显示这个错误。

错误代码在线 5. 13. 16. 27 我几乎尝试了所有方法并阅读了太多论坛,但我不明白为什么。 这是我在 c 中的第一个双端队列。我是 c 编程的新手,我将非常感谢您的帮助。 提前致谢。

附言对不起我的英语

【问题讨论】:

  • 松开#define MAX 10; 末尾的分号。行号是一个提示。
  • 并尝试接受一些答案。

标签: c data-structures deque


【解决方案1】:

这是您修改后的代码:

#include <stdio.h>
#include <conio.h>
#define MAX 10

int rradhe[MAX];
int koka = -1;
int bishti = -1;

void shto_djathas()
{
int element;

if ((koka == 0 && bishti == MAX -1 )||koka ==  bishti +1)
{
    printf("\nGjendje Overflow");
    getch ();int rradhe[MAX];
int koka = -1;
int bishti = -1;
    return;
}
if (koka == -1)
{
    koka = 0;
    bishti = 0;
}
else
    if (koka == MAX -1)
    bishti = 0;
else
    bishti = bishti + 1;
    printf ("\n Shtypni elementin qe doni te shtoni ");
    scanf ("%d", &element);
}

int main () {

    int c;
    while(true){
        printf("---------------------------");
        printf("\nDetyre Kursi - Ivi Hysenbelli , Olsi Lala");
        printf("\n 1 - Shtoni element ne rradhe"); // elementet do te shtohen nga e djatha
        printf("\n 2 - Hiq element nga e djatha(Nga fillimi)");
        printf("\n 3 - Hiq element nga e majta(Nga fundi)");
        printf("\n 4 - Afisho rradhen");
        scanf("%d",&c);

        if (c == 1)
            shto_djathas();
    }
    return 0;
}

【讨论】:

    【解决方案2】:

    从宏定义中删除分号

    #define MAX 10; 应该是#define MAX 10

    并了解为什么not to use semicolon in the end of macro

    【讨论】:

      猜你喜欢
      • 2015-03-28
      • 2021-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-31
      • 2012-07-08
      • 2015-01-03
      相关资源
      最近更新 更多