![](/img/trans.png)
[英]C Global Struct: “error: expected expression before '{' token”
[英]Pointing to struct in C - error: expected ')' before '*' token
我正在嘗試編譯以下代碼(將模擬蘭頓的螞蟻):
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
typedef struct
{
unsigned short x, y;
enum directions {up = 0, right, down, left} direction;
} langtonsAnt;
void turnAnt (lantonsAnt *pant, unsigned short quarterTurns)
{
pant->direction = (pant->direction + quarterTurns) % 4;
}
int main ()
{
return EXIT_SUCCESS;
}
但是,我不斷收到此錯誤:
12 |錯誤:預期在'*'標記之前的')'|
編譯器是gcc。
我已經搜索了網絡和各種參考文獻,因此無法弄清出什么問題了。
PS不用擔心標題,程序中其他地方都需要這些標題。
void turnAnt (lantonsAnt *pant, unsigned short quarterTurns)
應該
void turnAnt (langtonsAnt *pant, unsigned short quarterTurns)
您在指向函數turnAnt的傳遞指針中缺少“ g”! 注意結構名稱中“ lan”之后的“ g”嗎?
typedef struct
{
unsigned short x, y;
enum directions {up = 0, right, down, left} direction;
} langtonsAnt;
但是在您的函數turnAnt中,“ lantonsAnt * pant”缺少了“ g”! 它看起來應該像這樣:
void turnAnt (langtonsAnt *pant, unsigned short quarterTurns)
{
......
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.