#include "Header.h"
void mostraTabuleiro(int lin, int col, int **m){
int i, j, l;
char k = 65;
for (l = 1; l <= col; l++){
printf("\t%c", k);
k++;
}
printf("\n");
for (i = 1; i <= lin; i++){
printf("%d", i);
for (j = 1; j <= col; j++){
if (i == lin && j == col)
printf("\t[X]");
else
printf("\t[*] ");
}
printf("\n");
}
}
现在我想在文件中保存最多的笔记本,然后我开始这样做
int GuardaFicheiro(char *nome_fich){
FILE *fnovo;
char *novo_fich = "estadosTabuleiro.txt";
fnovo = fopen(novo_fich, "wt");
if (fnovo == NULL){
printf("Erro ao abrir o ficehiro de texto %s para escrita.\n", novo_fich);
return;
}
//mostraTabuleiro(6, 8, Tabuleiro, fnovo);
fclose(fnovo);
}
如果我把fprintf放在函数mostraTabuleiro之后,它就不会出现任何内容,而且文件是空白的。
答案 0 :(得分:1)
这应该更正
fnovo = fopen(novo_fich, "wt");
进入:
fnovo = fopen(novo_fich, "w");
之后使用fprintf();
fprintf(fnovo, /*source char * */);
答案 1 :(得分:-1)
请注意,您应该询问S.O.以this风格。您还可以阅读this。
Line Received from the external process: echo > foo
和
void mostraTabuleiro(int lin, int col, int **m, FILE *fnovo) {
int i, j, k;
for (k = 1; k <= col; k++){
fprintf(fnovo, "\t%d", k);
}
fprintf(fnovo, "\n");
for (i = 1; i <= lin; i++){
fprintf(fnovo, "%d", i);
for (j = 1; j <= col; j++){
if (i == lin && j == col)
fprintf(fnovo, "\t[X]");
else
fprintf(fnovo, "\t[*] ");
}
fprintf(fnovo, "\n");
}
}
和
void GuardaFicheiro(int lines, int columns, int **m){
FILE *fnovo;
char *novo_fich = "estadosTabuleiro.txt";
fnovo = fopen(novo_fich, "wt");
if(fnovo == NULL){
printf("error opening file %s for writing.\n", novo_fich);
return;
}
// this will write to the file
mostraTabuleiro(lines, columns, m, fnovo);
// this will write on screen : stdout
mostraTabuleiro(lines, columns, m, stdout);
fclose(fnovo);
}
而且,可能是int iniciaJogo() {
tabuleiro tab;
int i, j, m, n;
int res = 0;
int **Tabuleiro;
int cont = 0;
int iteracoes = 0;
do{
do{
printf("Dimensoes do ambiente\nLines\n");
scanf("%d", &tab.N_Linhas);
} while (tab.N_Linhas < 4 || tab.N_Linhas > 8);
do{
printf("Columns\n");
scanf("%d", &tab.N_Colunas);
} while (tab.N_Colunas < 6 || tab.N_Colunas > 10);
} while (tab.N_Linhas > tab.N_Colunas);
Tabuleiro = criaTabuleiro(tab.N_Linhas, tab.N_Colunas);
GuardaFicheiro(tab.N_Linhas, tab.N_Colunas, Tabuleiro);
//mostraTabuleiro(tab.N_Linhas, tab.N_Colunas, Tabuleiro, fnovo);
}
喜欢:
main
我确信上面的代码对您有用。但是你应该读一点C编程 - functions,structures和FileIO。
您的代码中有许多未使用的变量,您可以检查使用int main(){
iniciaJogo();
return 0;
}
编译代码