foo.c:23:5: error: expected specifier-qualifier-list before 'mat'
23 | mat(int M=0,int N=0){m=M;n=N;}
| ^~~
foo.c:34:1: error: unknown type name 'mat'; use 'struct' keyword to refer to the type
34 | mat operator*(mat a,mat b){
| ^~~
| struct
foo.c:34:13: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
34 | mat operator*(mat a,mat b){
| ^
foo.c:50:1: error: unknown type name 'mat'; use 'struct' keyword to refer to the type
50 | mat operator^(mat x,ll p){
| ^~~
| struct
foo.c:50:13: error: expected '=', ',', ';', 'asm' or '__attribute__' before '^' token
50 | mat operator^(mat x,ll p){
| ^
foo.c: In function 'main':
foo.c:3:25: warning: format '%d' expects argument of type 'int *', but argument 2 has type 'll *' {aka 'long long int *'} [-Wformat=]
3 | #define GetI64(x) scanf("%I64d",&x)
| ^~~~~~~
foo.c:62:5: note: in expansion of macro 'GetI64'
62 | GetI64(m);GetI64(a);GetI64(c);GetI64(x0);GetI64(n);GetI64(g);
| ^~~~~~
foo.c:3:30: note: format string is defined here
3 | #define GetI64(x) scanf("%I64d",&x)
| ~~~~^
| |
| int *
| %I64lld
foo.c:3:25: warning: format '%d' expects argument of type 'int *', but argument 2 has type 'll *' {aka 'long long int *'} [-Wformat=]
3 | #define GetI64(x) scanf("%I64d",&x)
| ^~~~~~~
foo.c:62:15: note: in expansion of macro 'GetI64'
62 | GetI64(m);GetI64(a);GetI64(c);GetI64(x0);GetI64(n);GetI64(g);
| ^~~~~~
foo.c:3:30: note: format string is defined here
3 | #define GetI64(x) scanf("%I64d",&x)
| ~~~~^
| |
| int *
| %I64lld
foo.c:3:25: warning: format '%d' expects argument of type 'int *', but argument 2 has type 'll *' {aka 'long long int *'} [-Wformat=]
3 | #define GetI64(x) scanf("%I64d",&x)
| ^~~~~~~
foo.c:62:25: note: in expansion of macro 'GetI64'
62 | GetI64(m);GetI64(a);GetI64(c);GetI64(x0);GetI64(n);GetI64(g);
| ^~~~~~
foo.c:3:30: note: format string is defined here
3 | #define GetI64(x) scanf("%I64d",&x)
| ~~~~^
| |
| int *
| %I64lld
foo.c:3:25: warning: format '%d' expects argument of type 'int *', but argument 2 has type 'll *' {aka 'long long int *'} [-Wformat=]
3 | #define GetI64(x) scanf("%I64d",&x)
| ^~~~~~~
foo.c:62:35: note: in expansion of macro 'GetI64'
62 | GetI64(m);GetI64(a);GetI64(c);GetI64(x0);GetI64(n);GetI64(g);
| ^~~~~~
foo.c:3:30: note: format string is defined here
3 | #define GetI64(x) scanf("%I64d",&x)
| ~~~~^
| |
| int *
| %I64lld
foo.c:3:25: warning: format '%d' expects argument of type 'int *', but argument 2 has type 'll *' {aka 'long long int *'} [-Wformat=]
3 | #define GetI64(x) scanf("%I64d",&x)
| ^~~~~~~
foo.c:62:46: note: in expansion of macro 'GetI64'
62 | GetI64(m);GetI64(a);GetI64(c);GetI64(x0);GetI64(n);GetI64(g);
| ^~~~~~
foo.c:3:30: note: format string is defined here
3 | #define GetI64(x) scanf("%I64d",&x)
| ~~~~^
| |
| int *
| %I64lld
foo.c:3:25: warning: format '%d' expects argument of type 'int *', but argument 2 has type 'll *' {aka 'long long int *'} [-Wformat=]
3 | #define GetI64(x) scanf("%I64d",&x)
| ^~~~~~~
foo.c:62:56: note: in expansion of macro 'GetI64'
62 | GetI64(m);GetI64(a);GetI64(c);GetI64(x0);GetI64(n);GetI64(g);
| ^~~~~~
foo.c:3:30: note: format string is defined here
3 | #define GetI64(x) scanf("%I64d",&x)
| ~~~~^
| |
| int *
| %I64lld
foo.c:64:5: error: unknown type name 'mat'; use 'struct' keyword to refer to the type
64 | mat b(1,2);
| ^~~
| struct
foo.c:64:11: error: expected declaration specifiers or '...' before numeric constant
64 | mat b(1,2);
| ^
foo.c:64:13: error: expected declaration specifiers or '...' before numeric constant
64 | mat b(1,2);
| ^
foo.c:65:5: error: 'b' undeclared (first use in this function)
65 | b[1][1]=x0;
| ^
foo.c:65:5: note: each undeclared identifier is reported only once for each function it appears in
foo.c:67:5: error: unknown type name 'mat'; use 'struct' keyword to refer to the type
67 | mat f(2,2);
| ^~~
| struct
foo.c:67:11: error: expected declaration specifiers or '...' before numeric constant
67 | mat f(2,2);
| ^
foo.c:67:13: error: expected declaration specifiers or '...' before numeric constant
67 | mat f(2,2);
| ^
foo.c:68:5: error: 'f' undeclared (first use in this function)
68 | f[1][1]=a;
| ^
foo.c:72:5: error: unknown type name 'mat'; use 'struct' keyword to refer to the type
72 | mat ans=b*(f^n);
| ^~~
| struct
foo.c:73:13: error: subscripted value is neither array nor pointer nor vector
73 | ll x=ans[1][1]%g;
| ^
foo.c:4:33: warning: format '%d' expects argument of type 'int', but argument 2 has type 'll' {aka 'long long int'} [-Wformat=]
4 | #define PutI64(x,arg...) printf("%I64d" arg,x)
| ^~~~~~~
foo.c:75:5: note: in expansion of macro 'PutI64'
75 | PutI64(x,"\n");
| ^~~~~~
foo.c:72:9: warning: variable 'ans' set but not used [-Wunused-but-set-variable]
72 | mat ans=b*(f^n);
| ^~~
[Hydro](https://hydro.ac)提供评测服务