Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

char * ; porównanie dwóch znaków

Ostatnio zmodyfikowano 2017-02-23 14:27
Autor Wiadomość
Anim
Temat założony przez niniejszego użytkownika
char * ; porównanie dwóch znaków
» 2017-02-23 14:16:35
Witajcie :)

Dla tablic charów chciałbym zrobić porównanie kolejnych znaków. Niestety nie potrafię zrobić odpowiedniego castowania:

C/C++
#include <iostream>
#include <stdio.h>

using namespace std;

int main( void ) {
   
    char * a[] = { "aaa", "bbb", "ccc" };
    int k;
    for( int i = 0; i < 3; i++ )
    {
        k = 0;
        while( *( a[ i ] + k ) != '\0' ) {
            cout << *( int * )( a[ i ] + k ) << " ";
            k++;
        }
       
        cout << endl;
       
    }
   
   
    return 0;
}

Niestety castowanie, które zastosowałem wypisuje adresy, a oczywiście nie o to mi chodzi. Chciałbym uzyskać wartość liter zgodnych z kodem ASCII. Można to łatwo zrobić?
P-158165
Anim
Temat założony przez niniejszego użytkownika
» 2017-02-23 14:27:18
Głupek ze mnie ;p Chwilowe zaćmienie umysłu. Rozwiązałem problem:

C/C++
#include <iostream>
#include <stdio.h>

using namespace std;

int main( void ) {
   
    char * a[] = { "aaa", "bbb", "ccc" };
    int k;
    for( int i = 0; i < 3; i++ )
    {
        k = 0;
        while( *( a[ i ] + k ) != '\0' ) {
            cout << int( *( a[ i ] + k ) << " ";
            k++;
        }
       
        cout << endl;
       
    }
   
   
    return 0;
}
P-158166
« 1 »
  Strona 1 z 1