gprof findet file nicht
-
Hallo!
Ich möchte gern quick_sort und shell_sort zeitlich analysieren.
Ich arbeite unter Windows MinGW. cpp-File Name ist val.cpp
Ich kompiliere mit
g++ -pg val.cpp -o valUnd rufe die funktion auf
valBeim Aufruf von val zeigt er mir wie viel ints ich in datein habe.
Aber beim Aufruf von
gprof valsagt er mir:
val:No such file or directoryWie muss ich denn gprof aufrufen?
Danke im Voraus.
Hier sind die codes:
#include <iostream> #include <fstream> using namespace std; static void shell_sort(int a[], int size) { int i, j; int h = 1; do { h = h * 3 + 1; } while (h <= size); do { h /= 3; for (i = h; i < size; i++) { int v = a[i]; for (j = i; j >= h && a[j - h] > v; j -= h) a[j] = a[j - h]; if (i != j) a[j] = v; } } while (h != 1); } static void quick_sort(int a[], int lo, int hi) { int h, l, p, t; if (lo < hi) { l = lo; h = hi; p = a[hi]; do { while ((l < h) && (a[l] <= p)) l = l + 1; while ((h > l) && (a[h] >= p)) h = h - 1; if (l < h) { t = a[l]; a[l] = a[h]; a[h] = t; } } while (l < h); t = a[l]; a[l] = a[hi]; a[hi] = t; quick_sort(a, lo, l - 1); quick_sort(a, l + 1, hi); } } int main() { int *a, *b; int i; a = new int[27]; b = new int[27]; ifstream fin; fin.open("C:/Users/Katjuwka/Desktop/C/rands.txt",ios::in); for (i = 0; i < 27 && !fin.eof(); i++) { fin >> a[i]; b[i] = a[i]; } cout << i << " ints read" << endl; shell_sort(a, i); quick_sort(b, 0, i - 1); fin.close(); }
-
Eigentlich genau so. Also wird val wohl nicht da sein, wo du denkst, wo es ist.
-
Also wird val wohl nicht da sein, wo du denkst, wo es ist.
Ich verstehe nicht.
gprof ist nicht in windows?
-
Wenn da steht
val:No such file or directorydann wird val nicht gefunden. Also wird's wohl nicht da sein, wo du sagst, dass es da wäre. Wenn du das nicht verstehst, dann ist das auch kein Wunder, denn dann bist du irgendwo, aber bestimmt nicht da, wo val ist.
-
Wie konnte er denn
g++ -pg val.cpp -o valkompilieren lassen,ohne richtige file oder directory zu finden?
In Linux ist läuft es gut, aber unter Windows findet es das nicht.
Wie kann ich dann val finden?
Search? Es ergibt sich nur in val in genau da,wo es sein soll.
Und ich habe auch in dieselbem directory gmon.out file
-
Wie konnte er denn
g++ -pg val.cpp -o valkompilieren lassen,ohne richtige file oder directory zu finden?
Welches Verzeichnis sollte wer dafür brauchen?Es ergibt sich nur in val in genau da,wo es sein soll.
Und ich habe auch in dieselbem directory gmon.out fileUnd du rufst auch von diesem Verzeichnis aus gprof auf? Falls ja, dann wäre dein gprof kaputt. Kann ich nicht glauben.
-
Ich konnte hier screen shoot nicht posten, also ich poste dass, was ich da eingebe
path c:\MinGW\bin;%PATH%
> cd ...\Valgrid
Valgrid>dirgmon.out
rands.txt
val.cppValgrid>g++ -pg val.cpp -o val
Valgrid>val
27 ints read
Valgrid>dirgmon.out
rands.txt
val.cpp val.exeValgrid>gprof val
val:No such file or directory
-
Die Datei heißt bei dir ja auch val.exe und nicht val.
-
danke