为什么我的字符串数组不会打印到控制台?

时间:2013-09-27 14:40:38

标签: c++ arrays string

我必须保存名称的数组是monsterPicker。我想让monsterNamer拿起一个名字,然后把它转移到monsterName。无论如何,我认为这是如何描述的。

我也尝试将数组放在monster.cpp中,但没有运气。我没有看到任何遗漏。我还没有学到不同的方法来做到这一点。我还在学习很多东西。

RPG.cpp(主要) http://pastebin.com/3KQEQQ2T

Monster.h http://pastebin.com/pBTCXE5k

Monster.cpp http://pastebin.com/RbSKkWvg

我得到的输出 “这个怪物的名字是,他将获得10点生命| 1次攻击| 2次exp。”

这是预期的输出
“这个怪物的名字是Zul'fihk,他将获得10点生命| 1次攻击| 2次exp。”

严格来说不是Zul'fihk,而是来自monsterPicker数组的任何名称。

2 个答案:

答案 0 :(得分:2)

我们假设randomNumber是正确的,并且4引用"Zul'fihk",根据您的示例。 您只能在monsterNamer中的while(randomNumber > 4)循环中设置RPG.cpp

好吧,因为randomNumber4,所以你的代码永远不会进入你的循环,因此永远不会设置monsterNamer

为了让它更正确,你应该改变:

randomNumber = rand() % 11;

randomNumber = rand() % 5;

然后,而不是循环做

monsterNamer = monsterPicker[ randomNumber ] ;

就是这样。

答案 1 :(得分:0)

如果randomNumber小于4,则永远不会向monsterNamer分配任何内容。它需要在所有情况下进行初始化。