2010-10-27 23 views

risposta

16

Come ha detto Zan, dipende dal tipo di codifica dei caratteri supportata dall'output standard. Se supporta Unicode, è possibile utilizzare la codifica per ² (U+00B2). Se supporta la stessa codifica Unicode per i file sorgente e l'output standard, puoi semplicemente incorporarlo nel file. Ad esempio, il mio GNU/Linux utilizza UTF-8 per entrambi, quindi questo funziona bene:

#include <iostream> 

int main() 
{ 
    std::cout << "cm²" << std::endl; 
} 
+2

Non funziona solo per Unicode. Su ISO-8859-1, ² è 'char (0xB2)'. Dal momento che il mio sistema Windows usa quello per i file sorgente e l'output della console, anch'io posso incorporarlo direttamente nei miei file sorgente. – MSalters

5

Questo non è qualcosa che il C++ può fare da solo.

È necessario utilizzare una funzione specifica del sistema della console.

Non sono a conoscenza di console o terminali che implementano il super-script. Potrei sbagliarmi comunque.

+0

Dipende dai caratteri disponibili e dalla codifica utilizzata. Con [UTF-8 ovunque] (http://utf8everywhere.org/) è possibile. –

2

Sì, sono d'accordo con Zan.

Basic C++ non ha alcuna funzionalità incorporata per stampare apici o pedici. È necessario utilizzare qualsiasi libreria UI aggiuntiva.

+4

Tecnicamente parlando, C++ non ha funzionalità per l'output di QUALSIASI carattere specifico. Anche per caratteri alfanumerici di base come 'a' o '2' C++ non ha alcuna funzionalità per produrli effettivamente. Tutto ciò che è in grado di fare è convertire quei letterali in codici carattere che vengono poi interpretati dal flusso di output a cui sono inviati. Generalmente questo risulta nel vedere un 'a' o un '2' sullo schermo, ma dato un po 'strano console e/o sistema di font si può ottenere qualsiasi cosa. –

0

per lo scripting eccellente o scripting sub è necessario utilizzare il valore ASCII della lettera o numero.

Ad esempio: Super scripting 2 per x², è necessario ottenere il ascii value of super script of 2 (cercare in google per quello), ovvero - 253. Per digitare il carattere ascii devi fare alt + 253 qui, puoi scrivere un numero qualsiasi, ma in questo caso è 253.

Ad esempio: - cout<<"x²";

Così, ora, dovrebbe essere visualizzato sullo schermo nero.

3

Stavo cercando di eseguire questo compito allo scopo di creare un risolutore di equazioni quadratiche. Scrivere ax² all'interno di un cout << mantenendo ALT mentre si digita 253 visualizzato correttamente solo nel codice sorgente, MA NON nella console. Durante l'esecuzione del programma, è apparso come un rettangolo di colore chiaro invece di un apice 2.

Una soluzione semplice a questo sembra fondere l'intero 253 come un carattere, come questo ... (char)253.

Poiché il nostro professore ci scoraggia dall'utilizzare i "numeri magici", l'ho dichiarato come variabile costante ... const int superScriptTwo = 253; //ascii value of super script two.

Poi, dove volevo l'apice 2 ad apparire nella console, ho lanciato la mia variabile come char come questo ... cout << "f(x) = ax" << (char)superScriptTwo << " + bx + c"; ed è visualizzato perfettamente.

Forse è ancora più semplice crearlo come char all'inizio e non preoccuparti di lanciarlo. Questo codice stampa anche un super sceneggiatura 2 per la console quando compilato ed eseguito in VS2013 sul mio Lenovo con Windows 7 ...

char ssTwo = 253; 
cout << ssTwo << endl; 

spero qualcuno troverà questo utile. Questo è il mio primo post, in assoluto, quindi mi scuso in anticipo se ho violato accidentalmente i protocolli Stack Overflow per rispondere a una domanda postata più di 5 anni fa.Qualsiasi evento di questo tipo non è stato intenzionale.

-1

Perché non provi ASCII?
Dichiarare un carattere e assegnargli un valore ASCII di 253 e quindi stampare il carattere.
Quindi il tuo codice dovrebbe andare così;

char ch = 253; 
cout<<"cm"<<ch; 

Questo sarà sicuramente stampare cm .