Twoje PC  
Zarejestruj się na Twoje PC
TwojePC.pl | PC | Komputery, nowe technologie, recenzje, testy
B O A R D
   » Board
 » Zadaj pytanie
 » Archiwum
 » Szukaj
 » Stylizacja

 
M E N U
  0
 » Nowości
0
 » Archiwum
0
 » Recenzje / Testy
0
 » Board
0
 » Rejestracja
0
0
 
Szukaj @ TwojePC
 

w Newsach i na Boardzie
 
OBECNI NA TPC
 
 » adolphik 00:28
 » Baraka 00:28
 » Pawiano 00:28
 » BONUS 00:28
 » krzysiozb 00:26
 » Bart 00:25
 » PCCPU 00:25
 » bodeq 00:23
 » Seba 00:23
 » Fl@sh 00:23
 » buddookan 00:17
 » MacLeod 00:17
 » DJopek 00:16
 » Banan 00:16
 » rzymo 00:16
 » perek 00:14
 » Kalkin 00:11
 » zyggy 00:07
 » XTC 00:07
 » majek 00:06

 Dzisiaj przeczytano
 381 postów,
 wczoraj 22935

 Szybkie ładowanie
 jest:
wyłączone.

 
TwojePC.pl © 2001 - 2019
A R C H I W A L N A   W I A D O M O Ś Ć
    

jak zamienic char na int w C++?? , dynybol 1/06/03 19:33
mam tak:
char ch;
int liczba;
liczba=ch; printf("d",liczba); (wypisuje ZAWSZE -1)
Ogolnie to czytam z pliku txt znak(ktory jest liczba) i chce go zamienic na integer.
Jak to zrobic??

Mówiąc "ROZUMIEM" zakladasz, że
wiesz co znaczy rozumieć.

  1. oj takie przepisanie sie nie uda , bartek_mi 1/06/03 19:45
    itoa

    dzisiaj jest jutrzejszym wczoraj

    1. dodatek , bartek_mi 1/06/03 19:47
      bo 'mi sie' wyslalo :)

      char *_itoa(
      int value,
      char *string,
      int radix
      );

      Parameters
      value
      Number to be converted.
      string
      String result.
      radix
      Base of value; must be in the range 2 – 36.

      example

      /* ITOA.C: This program converts integers of various
      * sizes to strings in various radixes.
      */

      #include <stdlib.h>
      #include <stdio.h>

      void main( void )
      {
      char buffer[20];
      int i = 3445;
      long l = -344115L;
      unsigned long ul = 1234567890UL;

      _itoa( i, buffer, 10 );
      printf( "String of integer %d (radix 10): %s\n", i, buffer );
      _itoa( i, buffer, 16 );
      printf( "String of integer %d (radix 16): 0x%s\n", i, buffer );
      _itoa( i, buffer, 2 );
      printf( "String of integer %d (radix 2): %s\n", i, buffer );

      _ltoa( l, buffer, 16 );
      printf( "String of long int %ld (radix 16): 0x%s\n", l,
      buffer );

      _ultoa( ul, buffer, 16 );
      printf( "String of unsigned long %lu (radix 16): 0x%s\n", ul,
      buffer );
      }


      wszystko za MSDN do visual studio .net

      dzisiaj jest jutrzejszym wczoraj

  2. operator rzutowania typow , bwana 1/06/03 20:01
    char a=wartosc;
    int b;
    b= (char) a;

    to wszystko.

    "you don't need your smile when I cut
    your throat"

    1. ups, korekta , bwana 1/06/03 20:02
      b=(int) a;

      "you don't need your smile when I cut
      your throat"

      1. ok tylko.. , dynybol 1/06/03 20:23
        Tamto dziala jesli napisze tak jak np. char a=2; ale ja czytam fynkcja get(a) znak z pliku txt i w tedy nie dziala. Kurde panowie nie ma niczego prostego to moj 1 program.
        Mam cos takiego:

        ifstream fin(nazwa);
        char a;
        int b;
        while(fin.get(a))

        ...... no i to "a" musze zamienic na "int b" zeby wykonac na tym operacje modulo - sprawdzic parzystosc.

        Mówiąc "ROZUMIEM" zakladasz, że
        wiesz co znaczy rozumieć.

        1. moze na GG? , dynybol 1/06/03 20:24
          591067

          Mówiąc "ROZUMIEM" zakladasz, że
          wiesz co znaczy rozumieć.

        2. wedlug definicji klasy istream metoda get(char) zwraca referencje do obiektu klasy istream , bwana 1/06/03 22:14
          natomiast wywolanie fin.get() zwraca int, ktory zamienisz na char uzywajac rzutowania typow, oczywiscie pod warunkiem, ze fin.get()!=EOF

          ---
          int a;
          unsigned char b;

          a=fin.get(); //masz kod ascii znaku wczytanego ze strumienia
          //jesli a==EOF to znaczy ze to koniec strumienia
          b=(char) a; //w b masz zmienna znakowa zgodna ze znakiem wczytanym ze strumienia.

          sprobuj w ten sposob.

          PS. Zalecam czytanie chocby prototypow funkcji/metod zawartych w plikach .h, szczegolnie, gdy funkcje te sa wielokrotnie przeciazane (ta sama nazwa funkcji/metody, wywolywana z roznymi argumentami). To pozwala rozwiazac wiele zagadek jezyka C/C++.

          "you don't need your smile when I cut
          your throat"

          1. Podziekowal , dynybol 2/06/03 12:41
            Serdeczne dzieki zaraz bede sie meczyl dalej :).

            Pozdrawiam

            Mówiąc "ROZUMIEM" zakladasz, że
            wiesz co znaczy rozumieć.

    
All rights reserved ® Copyright and Design 2001-2019, TwojePC.PL