在''之前预期'=',',',';','asm'或'__attribute__'.代币

Ras*_*yak 20 c

在此输入图像描述无法解决这个问题..我正在实施一个队列.写完完整代码后,我遇到了下面列出的错误:

expected '=', ',', ';', 'asm' or '__attribute__' before '.' token

然后我写了一个简单的程序,但同样的问题仍然存在.无法理解如何解决这个问题.我已经研究stackoverflow.com and google.com了很多解决方案,但仍然无法解决这个问题.请帮忙.

我想要 initialize globally Q.front = Q.rear = Any value

#include <stdio.h>
#include <stdlib.h>
struct Queue
{
    int front, rear;
    int queue[10] ;
};
struct Queue Q;
Q.front = 0;
Q.rear = 0;

int main()
{
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

gee*_*aur 14

Q.front = 0;不是一个简单的初始化器,它是可执行代码; 它不能在函数之外发生.使用适当的初始化程序Q.

struct Queue Q = {0, 0};
Run Code Online (Sandbox Code Playgroud)

或者使用命名的初始化语法(并非在所有编译器中都可用,并且仅在C中可用):

struct Queue Q = {.front = 0, .rear = 0};
Run Code Online (Sandbox Code Playgroud)


Nav*_*een 6

您无法Q.front = 0; Q.rear = 0;在全局范围内初始化变量.这些陈述应该main在你的情况下.