Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di afrappe
    Registrato dal
    Jan 2002
    Messaggi
    1,197

    [c++] caratteri accentati nelle stringhe

    std::cout << "oggi è brutto tempo";

    come devo fare per stampare in maniera corretta lettere tipo è é à ì ù
    con il carattere di escape "\" naturalmente non funziona

  2. #2
    io proverei ad assegnare a una variabile di tipo char il codice ascii della lettera che voglio visualizzare e poi visualizzare la variabile stessa.

    Tabella
    La curiosità è la fonte della conoscenza.

  3. #3
    Devi settare il locale giusto e usare i widechar

    codice:
    #include <stdlib.h>
    #include <wchar.h>
    #include <stdio.h>
    #include <locale.h>
    
    int main(){
        setlocale(LC_ALL, ".437");
        wchar_t stringa[] = L"Sono una stringa con lettere accentate: èòàùì";
        wprintf(L"%s", stringa);
        getchar();
        return 0;
    }
    o cosi se preferisci rimanere fedele al c++
    codice:
    #include <cstdlib>
    #include <cwchar>
    #include <cstdio>
    #include <iostream>
    #include <clocale>
    
    using namespace std;
    
    int main(){
        setlocale(LC_ALL, ".437");
        wchar_t stringa[] = L"Sono una stringa con lettere accentate: èòàùì";
        wcout<<stringa;
        getchar();
        return 0;
    }

  4. #4
    In alternativa puoi usare le apposite API di conversione dal/per il charset OEM.
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.