我有一个基本的C文件。它通过以下提示编译并运行完美:
gcc program.c -D N=100 -O4 -Ofast
但是,当我为第二个变量(z)添加-D标志时:
gcc program.c -D N=100 -D z=2 -O4 -Ofast
我收到以下错误:
program.c:14:5: error: expected identifier or '('
int z = 2;
^
<command line>:2:11: note: expanded from here
#define z 2
^
1 error generated.
program.c代码如下:
#include "program.h"
#include <stdio.h>
double A[N][N];
double B[N][N];
int z;
int min(int x, int y){
return (x < y) ? x : y;
}
void standard() {
int i,j;
for (i=0; i < N; i++)
for (j=0; j < N; j++)
A[i][j] += B[j][i];
}
void tiling() {
int i,j,x,y;
for (i=0; i < N; i+=z)
for (j=0; j < N; j+=z)
for (x=i; x < min((i + z),N); x++)
for (y=j; y < min((j + z),N); y++)
A[x][y] += B[y][x];
}
int main(int argc, const char * argv[]) {
printf("The number is: %d. The next number is: %d", N, z);
printf("The min is: %d.", min(13,20));
B[40][50] = 21.0;
tiling();
//standard();
printf("The matrix is: %f.",A[50][40]);
return 0;
}
自从我用C语言编码以来,已经有一段时间了,所以我生锈了,难倒了。任何帮助将不胜感激!