Ich verwende Windows 7 French und versuche, dieses wirklich grundlegende Programm zu kompilieren, aber Visual Studio ist hartnäckig und weigert sich, die Anforderungen zu erfüllen. Ich habe auch versucht, es mit GCC 4.7 und Clang Trunk auf Coliru zu kompilieren, und ich erhalte mehr oder weniger die gleichen Fehler (die Ausgabe befindet sich unter dem Code), obwohl ich denke, dass Coliru unter einem englischen Betriebssystem ausgeführt wird, sodass ich nicht erwarten würde, dass es trotzdem funktioniert .
Was mache ich falsch? Und wie kann ich das beheben?
Code
#inclure <iostream>
ent principal(ent argn, ent** argm) // entier, nombre d'arguments, valeur des arguments
{
std::cendehors << "Bonjour le monde!\n";
renvoi SORTIE_SUCCÈS;
}
Ausgabe
principal.cpp:1:6: erreur: prétraitement de la directive invalide #inclure
#inclure <iostream>
^
principal.cpp:6:8: erreur: '\303' égaré dans le programme
renvoi SORTIE_SUCCÈS;
^
principal.cpp:6:8: erreur: '\210' égaré dans le programme
principal.cpp:3:5: erreur: «ent» ne désigne pas un type
ent principal(ent argn, ent** argm) // entier, nombre d'arguments, value des arguments
^
c++
visual-studio-2013
french
Leichtigkeitsrennen im Orbit
quelle
quelle
std::findeligne
anstelle eines\n
Zeichens verwenden :)iostream
der korrekte Name der Kopfzeile auf Französisch lautet?Antworten:
Viele Probleme sind auf das Caching zurückzuführen , aber Ihr Problem ist eines der anderen schwierigen Probleme : das Benennen von Dingen. Ja, die Lokalisierung ist schwierig.
Sie haben nicht erwähnt, welche Variante von Französisch Sie verwenden, aber aus der Fehlermeldung geht hervor, dass Sie "Französisch (Frankreich)" verwenden (was wir Benutzer zivilisierter Betriebssysteme nennen
fr_FR
). Dasfr_FR
Gebietsschema von MS verhält sich sehr seltsam: Buchstaben mit Akzent in Großbuchstaben werden ihrem Gegenstück ohne Akzent zugeordnet (aus Gründen der Abwärtskompatibilität mit einigen Schreibmaschinenmodellen). Sie müssen alsoSORTIE_SUCCES
statt schreibenSORTIE_SUCCÈS
.Eine Problemumgehung besteht darin, die Sprache „Französisch (Monaco)“ (
fr_MC
) zu verwenden , in der Buchstaben mit Akzent in Großbuchstaben wie erwartet funktionieren. Leider ist die Monaco-Version des Compilers sehr, sehr teuer. Sie können auch die kanadische französische, belgische französische oder schweizerische französische Version verwenden. Für diese müssen Sie jedoch eine zweisprachige (fr_CA
+en_CA
), dreisprachige (fr_BE
+nl_BE
+de_BE
) oder viersprachige (fr_CH
+it_CH
+de_CH
+rm_CH
) Quelldatei einreichen. Afrikanische Varianten von Französisch sind nicht verfügbar, da sie zu arm sind, um sich einen C ++ - Compiler leisten zu können. Sie können jedoch stattdessen C verwenden.Dann gibt es andere Syntaxfehler in Ihrem Programm:
Ich habe den folgenden Code im C ++ - Compiler von Émaxe 51,70 ausprobiert und es hat funktioniert:
Einige Sprachen bieten eine bessere Internationalisierungsunterstützung als C ++. Zum Beispiel ist hier ein Programm in LOGO (nicht zu verwechseln mit LOGO natürlich).
quelle
Das Problem ist offensichtlich, dass Sie den falschen Standardheader einschließen:
sollte sein:
Sie werden auch feststellen, dass dies viel besser funktioniert, wenn Sie Studio Visuel Micromou oder die CCG-Tools (steht übrigens für "Collection de Compilateurs GPU") verwenden, anstatt deren häufigere MVS- oder GCC-Verwandte.
quelle
.e
Erweiterung erforderlich sind . Aber natürlich sind die Standarderweiterungen wie.e
,.ee
,.epp
sind vereinbarungsgemäß bevorzugt ... Einzelheiten: stackoverflow.com/questions/441568/...Sie haben einen semantischen Fehler - das zweite Argument der Eingabefunktion sollte vom Typ sein
cara**
, nichtent**
:Für den
<iostream>
Fehler @MartinJ. bereits richtig darauf hingewiesen, sollten Sie<esflux>
stattdessen verwenden.In Bezug auf die anderen Fehler scheint Ihr Compiler einfach im Streik zu sein. Dies kann gelegentlich beim Kompilieren von französischem Code auftreten und sollte sich in wenigen Tagen von selbst beheben lassen.
quelle
Dies ist kein BASIC-Programm, daher weiß Visual Studio nicht, was es damit anfangen soll.
Außerdem müssen Sie auf einem französischen System ein Programm an den Compiler übergeben.
quelle
Hallo Légèreté fait la kurs en orbite ,
Ich möchte betonen, dass Ihr Programm, obwohl Sie alle hier gegebenen Antworten befolgen, aufgrund Ihrer Interpunktion immer noch nicht kompiliert werden kann. Vor Semikolons steht ein nicht unterbrechendes Leerzeichen in Französisch.
Ich würde folgendes empfehlen:
Bitte beachten Sie, dass ich zu geändert
argn
habenarg
, da es auf Französisch natürlicher ist (nichts mit ungarischen Notationen zu tun)!Edit: folgte der Empfehlung von angew
quelle
In den vorherigen Antworten wurde so ziemlich alles behandelt, aber wenn ich hinzufügen darf:
dies ist certes erlaubt, aber die folgende ist in der Regel bevorzugt:
quelle
Sie müssen auf den französischen Vorprozessor verweisen:
hummm ... zu spät, es ist veraltet. Die neue Version wird diese Woche verfügbar sein.
quelle
Mir ist klar, dass dies nicht für diese spezielle Situation gilt, aber es ist wichtig, das Geschlecht Ihrer Objekte zu berücksichtigen, wenn Sie auf Französisch programmieren. Es gibt 2 Arten von Klassen (
genre
)genre::masculins
undgenre::féminin
Zum Beispiel:
Bei der Übergabe
this
an eine andere Funktion wird dem Funktionsaufruf außerdem die Parameterliste vorangestellt und nicht das Suffix:oder
Zur weiteren Bezugnahme: Wikipedia Word Order
quelle
Was ist, wenn Sie es nach den Mittagspausen (12 bis 14 Uhr) erneut versuchen? Wenn Sie mehr als einen Prozessor erhalten, können diese ebenfalls streiken. Sie können Ihren Prozess jedoch mit diesem (französischen) Windows 7-Befehl zurückerhalten:
Wiederholen Sie diesen Vorgang, wenn Sie nicht weiterkommen (aber vergessen Sie nicht, die Zahl jedes Mal zu verringern!).
quelle
set pension-starting-age = 62
könnte auch helfen, könnte sichset pension-starting-age = 60
bald ändern ...Sie haben anscheinend vergessen, das
FrenChPP++
Paket zu installieren . Nach einer erfolgreichen Installation (Sie müssenFrenChPP++
auf einem Standard-C ++ - Compiler kompilieren, wenn keine Binärpakete für Ihr System vorhanden sind (wir vom Unauthorized Frog empfehlen die Verwendung von g ++, können aber auch clang verwenden, aber die Warnungen ignorieren). Sie müssen ein neues Projekt erstellen und es einfach kopieren und in die neu erstellteprincipal.fcpp
Datei einfügen . Bei der AusführungFrenChPP++
analysiert der Precompiler (der sehr ähnlich wie Qt mit seinen Signalen / Slot-Mechanismen umgeht) alle.fcpp
Dateien und "übersetzt" sie.fcpp
in "valid".cpp
und kompiliert sie dann mit Ihrem Systemstandard-Compiler.quelle
Sie müssen wahrscheinlich das französische Sprachpaket für C ++ 11 installieren. Wenn Sie es nicht finden können, versuchen Sie es mit http://www.bing.com/translator .
quelle
Ihr Code enthält so viele Fehler, dass die meisten bereits in den anderen Antworten behandelt wurden. Aber wissen Sie nicht, dass die
C++
Entwickler es so gestaltet haben, dass der Quellcode des Programms bei der Übersetzung nicht zu lang wird?Es ist nicht
std::cendehors
, aberstd::deh
(kurz für Dehors ) wiestd::cin
übersetzt fürstd::ded
(für Dedans ).Beachten Sie auch, dass es früher Compiler gab, die nicht automatisch gespült
\n
wurden. Daher ist es besser, sie zu verwendenstd::findl
( fin de ligne ). So sollte es sein:EDIT: Entschuldigung, ich habe keinen weiteren Fehler entdeckt. Die richtige Form ist natürlich die Verwendung von Guillemets wie folgt:
quelle
Sie können keine französischen Schlüsselwörter in einem C ++ (oder C) -Programm verwenden. Sie sollten codieren
und ebenfalls
und natürlich Code
int main(int argc, char**argv)
etc ...(Danke für deinen Aprilscherz!)
quelle
Da George Bush Pommes Frites zugunsten der schmackhafteren Liberty Fries (und der weniger schmackhaften, aber ebenso patriotischen Freedom Fries) verboten hat, nehmen auch andere amerikanische Unternehmen die Unterstützung für Pommes Frites in ihren Produkten auf.
Sie müssen einen Compiler vor 2003 verwenden oder eine E-Mail an http://www.whitehouse.gov/contact/submit-questions-and-comments senden , um zu fragen, ob die Situation bald wiederhergestellt werden soll.
quelle
Erstens müssen Sie
bevor Sie die Konstante SORTIE_SUCCÈS verwenden können.
Ein weiteres Problem mit Ihrem C ++ - Code ist, dass Sie vergessen haben, std :: lend zu verwenden, und stattdessen '\ n' in Ihrer Ausgabezeichenfolge verwendet haben - es funktioniert nicht in französischem Code, natürlich ist nur Code zulässig, der in Englisch und Russisch geschrieben ist das zu tun.
Darüber hinaus haben Sie falsche Einrückungen verwendet (GCC für Französisch erfordert Tabulatoren anstelle von Leerzeichen) und die Platzierung von Klammern (Sie müssen Klammern nach Möglichkeit in derselben Zeile platzieren, wobei keine Leerzeichen zwischen ihnen zulässig sind). Wenn Sie sie unverändert lassen, werden in Ihrem Code Laufzeitfehler "vous ne connaissez pas votre tabulation, Jacques" und "pas assez d'amour entre accolades" generiert.
Nachdem ich diese Zeilen geändert habe, wurde der Code erfolgreich kompiliert. Es ist immer noch nicht gelaufen, wahrscheinlich aus den hier angegebenen Gründen .
Snippet: http://ideone.fr/sQbL6E
quelle