J'essaie d'utiliser la variable "ch" après l'avoir attrapé avec la fonction getch() à partir d'une expression dans une boucle. Je ne peux pas l'utiliser du tout car il renvoie toujours le même code char (1 que int). Je sais que je peux simplement utiliser while (1) et faire fonctionner getch() à partir de là, mais c'est considéré comme une mauvaise pratique et je me demande pourquoi ça ne fonctionne pas comme ça.getch() à l'intérieur while boucle renvoie toujours 1
#include <iostream>
#include <conio.h>
int main()
{
while (char ch = getch() != 'q')
{
std::cout << ch;
}
}
J'utilise le code :: blocks 13.12 avec le compilateur GNU GCC
par la façon .. cela ne fonctionne pas trop
int main()
{
char ch;
while (ch = getch() != 'q')
{
std::cout << ch;
}
}
[priorité de l'opérateur] (https://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Operator_precedence) –
de règle générale, l'affectation ne jamais mettre à l'intérieur – khuderm