έχω κολήσει κάπου άσχημα και δεν μπορώ να καταλάβω είναι μάλλον από τις πολλές ώρες

έχω αυτόν τον κώδικα το Result ξεκινάει με 80 δηλάδη όσο είναι το μέγεθος μιας σειράς στην console , σκέφτηκα να περνω το μέγεθος της λέξης και να το αφερω απο το μέγεθος της σειρας που αυτό όταν φτάσει να είναι μικρότερο απο το μέγεθος της επόμενης λέξης δηλαδη να μην το χωραει να πάει στην επόμενη σειρά και κάπου κολάω..... καμία βοήθεια αν υπάρχει θα ήταν χρήσιμη ίσως το βρω μέχρι τότες , Ποιος ξέρει...
Ευχαριστώ
Χρήστος
Κώδικας: Επιλογή όλων
for(temp = file1.begin();temp != file1.end();temp++)
{
tempstr = *temp;
string_len = tempstr.length();
result -= string_len;
if(result < string_len)
{
result = 80 - string_len;
cout << endl;
cout << tempstr << " " ;
}
else
{
cout << tempstr << " " ;
}
}