Ik heb een probleem in het volgende stuk code:
[cpp]
#include <iostream>
#include <string>
using namespace std;
const int zinlengte=30;
const string alfabet = " abcdefghijklmnopqrstuvwxyz";
int random_range(int lowest_number, int highest_number)
{
if(lowest_number > highest_number){
swap(lowest_number, highest_number);
}
int range = highest_number - lowest_number + 1;
return lowest_number + int(range * rand()/(RAND_MAX + 1.0));
}
string maak_random_beginzin()
{
string beginzin;
for(int i=0; i<zinlengte; i++)
{
beginzin = alfabet[random_range(0, 26)];
}
cout << beginzin;
return beginzin;
}
int main()
{
maak_random_beginzin();
return 0;
}
[/cpp]
De cout van de string beginzin in de funcite maak_random_beginzin werkt niet. Hij geeft geen foutmelding, maar er wordt niets ge cout. Als ik hem een bepaalde letter laat couten doet hij het wel, bijvoorbeeld cout << beginzin[5];
Het lijkt er dus op dat het opvullen van de string wel gelukt is. Maar als ik beginzin op een andere manier een waarde geef, bijvoorbeeld beginzin = "aap"; cout << beginzin; doet hij het ook. Het couten is dus ook het probleem niet. Ik heb echt geen idee wat het verder nog zou kunnen zijn. Hulp zou erg gewaardeerd worden.
[cpp]
#include <iostream>
#include <string>
using namespace std;
const int zinlengte=30;
const string alfabet = " abcdefghijklmnopqrstuvwxyz";
int random_range(int lowest_number, int highest_number)
{
if(lowest_number > highest_number){
swap(lowest_number, highest_number);
}
int range = highest_number - lowest_number + 1;
return lowest_number + int(range * rand()/(RAND_MAX + 1.0));
}
string maak_random_beginzin()
{
string beginzin;
for(int i=0; i<zinlengte; i++)
{
beginzin = alfabet[random_range(0, 26)];
}
cout << beginzin;
return beginzin;
}
int main()
{
maak_random_beginzin();
return 0;
}
[/cpp]
De cout van de string beginzin in de funcite maak_random_beginzin werkt niet. Hij geeft geen foutmelding, maar er wordt niets ge cout. Als ik hem een bepaalde letter laat couten doet hij het wel, bijvoorbeeld cout << beginzin[5];
Het lijkt er dus op dat het opvullen van de string wel gelukt is. Maar als ik beginzin op een andere manier een waarde geef, bijvoorbeeld beginzin = "aap"; cout << beginzin; doet hij het ook. Het couten is dus ook het probleem niet. Ik heb echt geen idee wat het verder nog zou kunnen zijn. Hulp zou erg gewaardeerd worden.
Laatst bewerkt door een moderator: