저는 신참 프로그래머입니다. 저는 C를 배우려고합니다. 주 프로그램에서 다른 파일을 실행하려고합니다. 그러나 컴파일 시간 오류가 발생합니다. 내 IDE는 말한다 : 오류. 함수 print의 암시 적 선언 또한 ROW와 COL이 여기에 정의되어 있지 않다고 말합니다. 물론 나는 3 개의 파일을 갖고 있는데, 나는 왜 이런 오류가 발생하는지 알지 못한다. 나는 당신이 생각한 것처럼 헤더 파일에서 ROW와 COL을 적절하게 정의했다고 생각합니다. 누군가이 간단한 코드로 문제를 볼 수 있습니까? 당신도 p750_eightqueens.c
에서 헤더 파일을 포함 할 필요가왜이 정의 지시문이 작동하지 않는 것 같습니까?
//p750_eightqueens.h
#ifndef P750_EIGHTQUEENS_H_INCLUDED
#define P750_EIGHTQUEENS_H_INCLUDED
#define ROW 8
#define COL 8
void go(int row, int col);
void print(int array[ROW][COL]);
#endif // P750_EIGHTQUEENS_H_INCLUDED
//p750_eightqueens.c
void go(int row, int col) {
int a[ROW][COL],i,j;
for(i=0;i<ROW;i++) {
for(j=0;j<COL;j++){
a[i][j]=(i==row&&j==col?1:0);
}
}
print(a);
}
void print(int array[ROW][COL]) {
int i,j;
for(i=0;i<ROW;i++) {
for(j=0;j<COL;j++){
printf("%i",a[i][j]);
if (j!=COL-1) printf(" ");
}
printf("\n");
}
}
//now in main.c
#include<stdio.h>
#include<stdlib.h>
#include "p750_eightqueens.h"
int main(){
go(4,4);
return 0;
}
tl; 그것을 요점까지 끓여 내려고 노력하십시오. – thang
'p750_eightqueens.c'는 실제로'#include "p750_eightqueens.c"라인을 포함하고 있습니까? – unwind