Ich habe ein Basisprogramm, die zwei Strings vergleichen:Warum ist strcmp unbekannt zu klingeln?
#include <string>
#include <iostream>
using namespace std;
int main (int argc, char *argv[]) {
if(strcmp (argv[0],"./test") != 0) {
cout << "not equal" << endl;
} else {
cout << "equal" << endl;
}
return 0;
}
es mit gcc, aber nicht mit Klirren kompiliert:
> clang -o test test_clang.cpp
test_clang.cpp:7:6: error: use of undeclared identifier 'strcmp'
if(strcmp (argv[0],"./test") != 0) {
^
1 error generated.
Warum es nicht mit Klirren kompilieren?
EDIT: Leute werden hart auf Stapelüberlauf, bis zu dem Punkt, dass ich zögere, eine Frage zu stellen. Die obige Frage hat eine einfache Antwort, gut, aber ist es normal, Fragen zu verwerfen (zweimal in der ersten Minute!), Weil sie eine einfache, aber nicht offensichtliche Antwort haben?
Ich habe keine Ahnung, warum Leute dies abgelehnt haben. Es ist deutlich gesagt und eine gültige Frage. – aschepler
"Diese Frage zeigt keinen Forschungsaufwand". Der erste Treffer in Google für "strcmp" hat ein Codebeispiel mit '#include' (was auch eine gültige Lösung ist). Minimal Forschung hätte diese Frage beantwortet. Deshalb habe ich es abgelehnt. Triviale Fragen mindern den Wert dieser Seite. –
Ein minimales Beispiel zu machen und die Ergebnisse zweier Compiler zu vergleichen, ist der Forschungsaufwand. – aschepler