Actuellement, j'essaie d'écrire un programme C/C++ dans du code Visual Studio. Pour cela, j'ai installé deux extensions: C/C++ & C++ Intellisense
Selon la documentation, la fonction de débogage n'est pas disponible pour Windows. J'ai pu créer et exécuter le code avec les tâches suivantes:
{
"version": "0.1.0",
"command": "cmd",
"isShellCommand": true,
"args": [
"/C"
],
"tasks": [
{
"taskName": "Makefile",
"suppressTaskName": true,
// Make this the default build command.
"isBuildCommand": true,
// Show the output window only if unrecognized errors occur.
"showOutput": "always",
// No args
"args": [
"C:/Programs/cygwin/bin/make.exe",
"all"
],
// Use the standard less compilation problem matcher.
"problemMatcher": {
"owner": "cpp",
"fileLocation": [
"relative",
"${workspaceRoot}"
],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
},
{
"taskName": "Run",
"suppressTaskName": true,
"isTestCommand": true,
"args": [
"helloworld"
]
}
]
}
et un simple Makefile
:
all: clean helloworld
helloworld: helloworld.cpp
C:/Programs/cygwin/bin/g++ helloworld.cpp -o helloworld
clean:
C:/Programs/cygwin/bin/rm -rf helloworld
Mais, le problème se pose, lorsque les programmes ont besoin d'une entrée utilisateur lors de l'exécution. Supposons pour ce programme helloworld
très familier.
# include <iostream>
using namespace std;
int main ()
{
int name;
cin >> name;
cout << "Hello, " << name << "!!!" << endl;
return 0;
}
Pouvez-vous m'aider à obtenir l'entrée utilisateur au moment de l'exécution. Il existe une solution pour passer l'entrée en tant qu'arguments de ligne de commande. Mais cela n'est pas possible pour les programmes avec des flux complexes.
Accédez à Fichier> Préférences -> Paramètres utilisateur et ajoutez des paramètres personnalisés:
{
"code-runner.runInTerminal": true
}
Enfin, exécutez votre code c ++ et vous pourrez entrer des valeurs dans la console
Pour plus de commodité, vous pouvez également fournir des entrées à partir d'un commentaire dans le terminal intégré.
Exemple:
# include <iostream>
using namespace std;
int main ()
{
int name;
cin >> name;
cout << "Hello, " << name << "!!!" << endl;
return 0;
}
/*input
123
*/
Lien d'extension -
Entrée de commentaire: https://marketplace.visualstudio.com/items?itemName=virresh.cinp
Remarque: Cette extension dépend de code-runner , une autre extension qui peut exécuter des scripts pour presque toutes les langues (et vous pouvez également spécifier des options de construction personnalisées)
Avertissement: je suis l'auteur de cette extension