【发布时间】:2015-04-27 05:08:05
【问题描述】:
试图使字符串“Abbot”成为我的 basePlayer 数组的 [1] 槽。基本上他们在开关中选择播放器,然后播放器字符串将存储在数组中。
第 118 行
非常感谢您的帮助,如果您复制、粘贴、编译和运行,程序将运行。 感谢您的观看!!
#include <iostream>
#include <string>
#include <windows.h>
#include <cmath>
#include <cstring>
#include <cstdlib>
using namespace std;
int main(){
Beep(251.63,100);
Beep(329.63,100);
Beep(392,100);
Beep(251.63,100);
Beep(329.63,100);
Beep(392,100);
Beep(251.63,100);
Beep(329.63,100);
Beep(392,100);
string playerList[6] = {"Abbot", "Seer", "Hellion", "Vagabond", "Knave","##QUIT##"};
string cityList[4] = {"city1","city2","city3","city4"};
string spiritList[4] = {"spirit1","spirit2","spirit3","spirit4",};
string yesNo[2] = {"yes","no"};
string name;
string player;
string city;
string spirit;
string basePlayer[4] = {name, player, city, spirit};
int pointer = 0;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 5);
cout << "What is your name?" << endl;
cin >> name;
cout << "your name is " << name << "?" << endl;
basePlayer[0] = name;
while(true){
system("cls");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 5);
cout << basePlayer[0]<<" please choose your Adventurer:\n*tab* for description\n\n";
for (int row = 0; row < 6; ++row){
if(row == pointer){
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 11);
cout << playerList[row] << endl;}
else{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 5);
cout << playerList[row] << endl;}}
while(true){
if (GetAsyncKeyState(VK_UP) != 0){
Beep(800,50);
pointer -= 1;
if (pointer == -1){
pointer = 0;}
break;}
else if (GetAsyncKeyState(VK_DOWN) != 0){
Beep(800,50);
pointer += 1;
if (pointer == 6){
pointer = 0;}
break;}
else if (GetAsyncKeyState(VK_TAB) != 0){
Beep(1200,50);
Beep(1000,50);
switch(pointer){
case 0:{
system("cls");
cout << "AbbotFacts.\n\n*RightArrow* to become the Abbot\n*ArrowDown* to return to TitleScreen";
Sleep(1000);
}
break;
case 1:{
system("cls");
cout << "SeerFacts.\n\n*RightArrow* to become the Sear\n*ArrowDown* to return to TitleScreen";
Sleep(1000);
}
break;
case 2:{
system("cls");
cout << "HellionFacts.\n\n*RightArrow* to become the Hellion\n*ArrowDown* to return to TitleScreen";
Sleep(1000);
}
break;
case 3:{
system("cls");
cout << "VagabondFacts.\n\n*RightArrow* to become the Vagabond\n*ArrowDown* to return to TitleScreen";
Sleep(1000);
}
break;
case 4:{
system("cls");
cout << "KnaveFacts.\n\n*RightArrow* to become the Knave\n*ArrowDown* to return to TitleScreen";
Sleep(1000);
}
break;
case 5:{return 0;}
break;
break;}}
else if (GetAsyncKeyState(VK_RIGHT) != 0){
Beep(1000,50);
Beep(1200,50);
switch(pointer){
case 0:{
system("cls");
player = "Abbot";
cout << basePlayer[0] << ", You have chosen the "<< basePlayer[1] << endl;
Sleep(1000);
}
break;
case 1:{
system("cls");
cout << "You have chosen the Seer"<< endl;
player="Seer";
cout << basePlayer[1] << endl;
Sleep(1000);
}
break;
case 2:{
system("cls");
cout << "You have chosen the Hellion"<< endl;
player="Hellion";
cout << basePlayer[1] << endl;
Sleep(1000);
}
break;
case 3:{
system("cls");
cout << "You have chosen the Vagabond" << endl;
player="Vagabond";
cout << basePlayer[1] << endl;
Sleep(1000);
}
break;
case 4:{
system("cls");
cout << "You have chosen the Knave"<< endl;
player="Knave";
cout << basePlayer[1] << endl;
Sleep(1000);
}
break;
case 5:{return 0;
break;}
break;}}
}
Sleep(150);
}
}
【问题讨论】:
-
变量'player'的用途是什么?
-
我可以把整个游戏脚本放在那里。
-
我认为这个问题有太多未知数,无法回答,我建议您阅读提出好问题的指南,您更像是在问“我该怎么做游戏”而不是“我如何将字符串存储在数组中”,我不确定你在问什么。 stackoverflow.com/help/how-to-ask
-
好了,感谢大家观看!如果您运行该程序,应该更容易知道我要做什么。对不起,如果我没有很好地解释。基本上试图制作一个包含 4 行信息的最终 basePlayer 数组。 {name, player, city, spirit}
-
抱歉我的问题可能不好
标签: c++ arrays string variables store