dimanche 29 mai 2016

C++ File Input/Output Outputting Numbers Instead of Chars

I have created a program that randomly assigns roles(jobs) to members of a certain house using file input / output.. It builds successfully, but when using cout and I actually see the results, I can see why the program is not working.

Here is the snippet of code I believe something is wrong with :

  std::string foo = std::string("Preferences/") + std::to_string(members[random]) + "-Preferences";
  cout << foo << endl;

And here is the members[random] array, it is randomly selecting members from this array and reviewing their available times and assigning them jobs based on their Preference input file.

unsigned const char members[22] = 
{   'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v'  };

I have created a random number picker that goes through 0-21 and assigns the value it creates to variable random. So, in essence, it is members[random] and completely random.

Here is the output I get in my terminal.

Preferences/116-Preferences

But I set the output to do Preferences/ member[random] -Preferences. It is accessing a number and not my array chars.

I created a cout << members[random]; right below it, and every time I run the program, I get

  Preferences/107-Preferences   <---- A random number every time

  k                   <---- random letter every time.

So I know it must be accessing my random functions, but assigned it to numbers! How do I fix this so my proper output can be :

 Preferences/t-Preferences

Please help me, and thanks!




Aucun commentaire:

Enregistrer un commentaire