ページ 11

無題

Posted: 2010年11月19日(金) 15:24
by Ken
下のプログラムをコンパイルしたところ、プログラムの下に書いてあるようなエラーがでました。
どこを直せばいいのか教えてください。

#include <stdio.h>
#include <GL/glut.h>
#include <stdlib.h>
#include <math.h>

#define IMG_X 500
#define IMG_Y 500
#define Focus 10
#define PI 3.14159265

double viewport[3][3]={{IMG_X/2,0,IMG_Y/2},
{0,-IMG_Y/2,IMG_X/2},
{0,0,1}};

double toushi[3][4]={{Focus,0,0,0},
{0,Focus,0,0},
{0,0,1,0}};

double modelview[4][4]={{1,0,0,0},
{0,cos(PI/3),sin(PI/3),0},
{0,-sin(PI/3),cos(PI/3),0},
{0,0,0,1}};


double martrix[3][4];
double martrix2[3][4];

void add(){
int i,j,k;

for (i=0;i<3;i++){
for (j=0;j<4;j++){
martrix[j]=0;
for(k=0;k<4;k++){
martrix[j]+=toushi[k]*modelview[k][j];
}
}
}

for (i=0;i<3;i++){
for (j=0;j<4;j++){
martrix2[j]=0;
for(k=0;k<3;k++){
martrix2[j]+=viewport[k]*martrix[k][j];
}
}
}
}


/*
enshu5.c:20: error: 初期化子の要素が定数ではありません
enshu5.c:20: error: (near initialization for `modelview[1][1]')
enshu5.c:20: error: 初期化子の要素が定数ではありません
enshu5.c:20: error: (near initialization for `modelview[1][2]')
enshu5.c:20: error: 初期化子の要素が定数ではありません
enshu5.c:20: error: (near initialization for `modelview[1]')
enshu5.c:21: error: 初期化子の要素が定数ではありません
enshu5.c:21: error: (near initialization for `modelview[2][1]')
enshu5.c:21: error: 初期化子の要素が定数ではありません
enshu5.c:21: error: (near initialization for `modelview[2][2]')
enshu5.c:21: error: 初期化子の要素が定数ではありません
enshu5.c:21: error: (near initialization for `modelview[2]')
enshu5.c:22: error: 初期化子の要素が定数ではありません
enshu5.c:22: error: (near initialization for `modelview[3]')
*/

Re:無題

Posted: 2010年11月19日(金) 15:28
by softya
初期化子にsin/cosが入っているためだと思います。
C言語ではエラーになります。
C++ならOKです。