C++: Wie kann ich die Ausgabe in die Textdatei schreiben?

Ich habe an diesem Code getüftelt:

#include <stdio.h>
#include <stdlib.h>
#include <bits/stdc++.h>
#include <iostream>
#include <fstream>

using namespace std;
using std::cout;
using std::setw;

void printAllKLengthRec(char set[], string prefix, int n, int k) {
  if (k == 0) {
    cout << (prefix) << endl;
    return;
  }

  for (int i = 0; i < n; i++) {
    string newPrefix;
    newPrefix = prefix + set[i];
    printAllKLengthRec(set, newPrefix, n, k - 1);
  }
}

void printAllKLength(char set[], int k,int n) {
  printAllKLengthRec(set, "", n, k);
}

// Driver Code
int main() {
  ofstream myfile;
  myfile.open ("example.txt");

  cout << "First Test" << endl;

  char set1[] = {'A', 'B', 'C', 'D', 'E', 'F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
  int k = 5;
  printAllKLength(set1, k, 26);
  myfile << printAllKLength;
  myfile.close();

  return 0;
} 

Ich komme leider bei einer Sache nicht weiter. Ich versuche die Ausgabe in die Textdatei zu übertragen, aber irgendwie komme ich nicht weiter. Ich habe Schwierigkeiten, den Wert von void in String umzuwandeln. Wenn man den Code ausführt, findet man nur eine Zahl 1 in der erstellten Textdatei.

Mein Ziel ist es, alle Möglichkeiten von 26 Buchstaben (von A bis Z) in fünf Stellen in der Textdatei auszudrücken.

Es soll ungefähr so aussehen:

EPEWR
EPEWS
EPEWT
EPEWU
EPEWV
EPEWW
EPEWX
EPEWY
EPEWZ
EPEXA
EPEXB
EPEXC
EPEXD
EPEXE
EPEXF
EPEXG
EPEXH
EPEXI
EPEXJ
EPEXK
PC, Computer, Technik, Programmieren, Computerproblem, Computersprache

Was möchtest Du wissen?