J'ai essayé de coder des programmes qui ont des arguments de ligne de commande en entrée. Quand je les arguments de ligne de commande entre guillemets dans cmd commeUtilisation de guillemets dans les arguments de ligne de commande
g++ -o filename.exe filename.cpp // for compiling
et
filename.exe "2 -1 0 2 -3" // run command
réponse était incorrecte. Mais quand je
g++ -o filename.exe filename.cpp // for compiling
filename.exe 2 -1 0 2 -3 // run command
réponse est correcte ...... pourquoi est-il passe ... quelqu'un peut-il suggérer quelque chose pour y remédier pls .... je l'ai utilisé C++ pour code et cmd pour se conformer et exécuter et tester.
Tout ce qui est entre guillemets est passé en argument ** un **. – Galik
Les guillemets dans CMD échappent à la plupart de ses caractères spéciaux, mais ils n'ont rien à voir avec le fait que CMD passe * arguments * à un programme. Le devis est analysé partiellement par CMD pour trouver le fichier à exécuter s'il est cité. Sinon, il est analysé par le processus lui-même. Les programmes Windows sont exécutés avec une chaîne de ligne de commande, et ils utilisent généralement soit le [C runtime pour analyser les arguments] (https://docs.microsoft.com/en-us/cpp/cpp/parsing-cpp-command-line -arguments) ou appelez CommandLineToArgvW, qui utilise des règles similaires. – eryksun