単純な文字列を *char の配列に解析しようとしていますが、何らかの理由で string.c_str() を使用すると、文字列全体が *char[0] に配置され、残りの配列は空白のままになります (私はもともとchar は 1 つの ASCII 文字しか保持できないと考えていましたが、ポインターとしては異なる動作をしていると思います)、誰かが私の関数をスキャンして、明らかな間違いがあるかどうか教えてもらえますか?
static void SetGame()
{
// Variable Initiation
int myRandom = rand() % (numOfWords - 1);
lengthOfString = wordArray[myRandom].length();
// Reinitiate Pointer Arrays
stringArray = new string[lengthOfString];
isDiscoveredArray = new bool[lengthOfString];
// Parse string to the array of characters
*stringArray = wordArray[myRandom].c_str();
// Set each boolean array value to false
for (int i = 0; i < sizeof(isDiscoveredArray); i++)
{
isDiscoveredArray[i] = false;
}
}
これが私のポインターの減速です
// Global Variable and pointer Declerations
string *wordArray;
int numOfWords;
string *stringArray;
int lengthOfString;
bool *isDiscoveredArray;
何か案は?ありがとう。