10
votes

Fonction CLRSCR en C et C ++

Les compilateurs C ou C ++ d'aujourd'hui utilisent-ils la fonction système CLRSCR ?

c c++

0 commentaires

5 Réponses :


13
votes

CLRSCR () est une fonction non standard (ni non mentionné dans ISO C99 ni dans ISO C ++ - 98 ) défini dans < conio.h> (qui n'est pas conforme standard lui-même). Cependant, certains compilateurs (comme Turbo C / C ++ ) le supportent comme une extension. < / p>


1 commentaires

donc ce que nous utilisons sous Linux au lieu de CLRSCR



8
votes

Comme tous les éléments de conio.h . CLRSCR () n'a rien à voir avec la norme C. CONIO est une API commune d'anciens implémentations C DOS-C pour une console de niveau inférieur IO - des choses comme Effacement de l'écran, déplacer le curseur, lire des coups de frappe individuels, etc. Je ne connais pas l'histoire, mais il est vraisemblablement remonté à AVANT DOSS avait ansi.sys pour prendre en charge les codes d'échappement de terminaux standard pour le positionnement du curseur, effacer l'écran , changeant de couleurs, ...

Si vous ne jouez simplement pas autour de l'apprentissage C, il n'ya aucun mal à utiliser les fonctions CONIO , mais vous devez éviter de faire une habitude de #include . Dans la plupart des questions que j'ai constatées sur, où conio.h a été inclus, il n'était même pas utilisé ... Ce genre de mauvaise habitude conduit à un code insensé sans importance.


2 commentaires

CONIO.H est (à l'aide de l'utilisation des fonctions API natives directement) le seul moyen d'obtenir une entrée et une sortie unicode fiables pour la console Windows, elle joue donc toujours un rôle aujourd'hui.


N'est-il pas possible de définir la console IO 'codépage' à UTF-8? Je n'ai pas que ce n'est pas possible de définir le «codépage ANSI» à UTF-8, mais je pensais que Windows a permis à UTF-8 dans d'autres contextes.



0
votes

Aussi, comme alternative à conio.h , vous pouvez essayer d'utiliser NCurses , qui fournit une manipulation des terminaux, une gestion du curseur, des couleurs et de nombreuses autres fonctionnalités. En particulier, il fournit la fonction Clear () avec une fonctionnalité similaire à la fonction CLRSCR () Fonction que vous avez mentionnée. Pour Windows (qui doit être votre cas), il y a PDCurses qui utilise la même API. En particulier, NCurses est conforme à la spécification de base de la base XSI, et il est largement adopté; vous devez vous en tenir à ce que tout degré de portabilité compte.


0 commentaires

0
votes

Deathstation 9000 et son compilateur Zog C utilisent toujours CLRSCR () .

Citation de http://dialspace.dial.pipex.com/ Town / Green / GFD34 / Art /

Ce serait regrettable si plus des vies ont été perdues simplement parce que certaines Les programmeurs ressentent un besoin spirituel profond obliter le périphérique d'affichage, et beaucoup plus, à l'aide de Zog C commence Lancement (console de systèmes distants Demande) Fonction, CLRSCR () .


0 commentaires

-1
votes

sur des systèmes de type UNIX Vous pouvez utiliser des codes d'échappement VT100.

std::cout << "\033[2J" << std::flush;


0 commentaires