【发布时间】:2013-11-10 18:25:27
【问题描述】:
我是 C 编程领域的新手,我正在尝试编写一个原始的、基于终端的“Hangman”游戏版本。
执行此操作的步骤之一(或至少我正在处理的方式)是创建第二个 char 数组(在存储需要猜测的单词的原始 char 数组旁边),用“*”填充对于原始数组的每个 Char,并显示它。虽然剩下的编程部分还没有完成(因为我还没有完成它),但我怀疑它现在是否相关(但是我已经知道如何继续,也就是说,如果我没有被一些错误困扰 -消息)....
这是我目前的代码:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
void hiddenArray(char array[]);
char *secretWord;
char *arrayCover;
char letter;
int main(int argc, char *argv[]){
secretWord = "Test";
printf("Welcome to the Hangman!\n\n");
hiddenArray(secretWord);
printf("What is the hidden Word?: %c\n", *arrayCover);
printf("Guess a letter\n");
scanf("%c", &letter);
}
void hiddenArray(char array[]){
int size,i;
size = sizeof(*array);
for (i=0;i<size-1;i++){
*(arrayCover+i) = "*";
}
}
现在我有两个问题……第一个: 我不明白编译后收到的错误消息:
pendu.c:41:19: warning: incompatible pointer to integer conversion assigning to 'char' from 'char [2]' [-Wint-conversion]
*(arrayCover+i) = "*";
^ ~~~
1 warning generated.
我的第二个问题:创建的第二个数组,用“*”填充没有显示,我做错了什么?
我很想得到一些帮助,干杯!
【问题讨论】:
-
这个程序有太多错误(分段):(