" expected identifier or ‘(’ before ‘[’ token" and " error: expected ‘)’ before ‘A’"
c
Solution
You should move the `[N][N]` part to the end of the declaration, and add a semicolon after the forward declaration of `path`.
typedef int adj_mat[N][N];
int path (adj_mat A, int u, int v);
There are also inaccuracies in the remaining of your code:
- `scanf("%d", &sonnode;);` has extra semicolon, should be `scanf("%d", &sonnode);`
- `else printf printf` should be `else printf`
- Semicolons are missing in a few places
- a `/` is at the end of one line that shouldn't be there
- `main` needs to return an `int`
Problem
this is prog in C (adjacency.c) that checks if exists in directed graph way from node a to node b ``` # include <stdio.h> # include <stdlib.h> #define N 11 #define FALSE 0 #define TRUE 1 typedef int[N][N] adj_mat; int path (adj_mat A, int u, int v) void main() { adj_mat Matrix; int dadnode, sonnode; printf("bla-bla-bla enter nodes.\n"); printf("Press Ctrl+Z after finishing of bla-bla-bla all the nodes\n"); do { printf("Enter the number of first node\n"); scanf("%d", &dadnode); printf("Enter the number of second node\n"); scanf("%d", &sonnode;); if ((dadnode < sonnode) && (sonnode <= N) && (dadnode > 0)) Matrix[dadnode][sonnode] = 1; } while ( (dadnode != EOF ) && (sonnode != EOF)); printf("Now enter u and v nodes to check if exists way from u node to we node\n") printf("Enter the number of u node\n"); scanf("%d", &dadnode); printf("Enter the number of v node\n"); scanf("%d", &sonnode;); if ((dadnode < sonnode) && (sonnode <= N) && (dadnode > 0)) { if(path(Matrix,dadnode,sonnode) == TRUE ) printf ("Exists way from node u to node v "); } else printf printf ("Not exists way from node u to node v "); } int path (adj_mat A, int u, int v) { if (v >= u) return FALSE; int nodenum; for(nodenum = v - 1; nodenum > 0; nodenum-- ) { if (A[nodenum][v] == TRUE) { if (nodenum == u) / return TRUE; else if (path (adj_mat A, int u, int nodenum)) return TRUE; } } return FALSE; } ``` when i type command gcc -o adjacency -ansi adjacency.c i get adjacency.c:8: error: expected identifier or ‘(’ before ‘[’ token adjacency.c:10: error: expected ‘)’ before ‘A’ adjacency.c:58: error: expected ‘)’ before ‘A’ how to fix ? update: thanks to all for help. compiled.