Odczyt kodu znaku

0

Witam

1.Program ma odczytać plik tekstowy(ta część programu działa).
2.Program ma wybrać pierwszy znak z tego pliku(ta część programu działa).
***3.Program ma podać numer pierwszego znaku który został wybrany z pliku i
w tej linii mam błąd. Podpowiedzcie co robię źle.

*
**

#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>
#include <conio.h>
#include <sstream>

using namespace std;
 
int main()
{
    string linia;
    fstream plik;
 
std::string cyfra1 = "";


    plik.open("plik.txt", ios::in);
    if(plik.good() == true)
    {
        while(!plik.eof())
        {
            getline(plik, linia);

             cyfra1 += linia;
          }

plik.close();
    }

std::string cyfra2(cyfra1, 0,1);


std::string znak = cyfra2; 
    int nrznaku = (int)znak;  //w tej linii wyrzuca mi błąd


cout << nrznaku << endl; 
 
    system("PAUSE");
    return(0);
}



3

Strasznie Ci identyfikatory kłamią. Cyfra1, która jest jakąś długą sklejanką, znak który jest stringiem.

Do poprawnej kompilacji wystarczy

    int nrznaku = znak[0];

Ale wobec lekkiej sieczki obok, nie gwarantuję za poprawne wykonanie.

3

Nie potrzebujesz zmiennych cyfra2 i znak. Wystarczy Ci linia:

int nrznaku = (int)cyfra1[0];

Możesz jeszcze Ewentualnie wcześniej sprawdzić czy cyfra1 zawiera jakieś znaki

0

Wielkie dzięki wszystko zadziałało.

0

Strasznie przekombinowałeś ten kod: https://wandbox.org/permlink/LzIeJAKf12mf91wZ

1 użytkowników online, w tym zalogowanych: 0, gości: 1