eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika[Podstawy C] Inicjalizacja zmiennych CHAR wartością zależną od #defineRe: [Podstawy C] Inicjalizacja zmiennych CHAR wartością zależną od #define
  • Data: 2009-11-06 18:13:41
    Temat: Re: [Podstawy C] Inicjalizacja zmiennych CHAR wartością zależną od #define
    Od: "Pszemol" <P...@P...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    "Konop" <k...@g...pl> wrote in message
    news:hchdh2$10c$1@inews.gazeta.pl...
    >> Najprościej #define MOJ_ZNAK "\1"
    >> Teraz zadziała.
    >
    > Racja, dzięki za uwagi. Tego nie sprawdzałem z innego względu... część
    > znaków używam w ten sposób:
    > unsigned char ch;
    >
    > ch = MOJ_ZNAK;
    >
    > No i teraz to już nie działa :(... czyli wychodzi na to, że i tak muszę
    > mieć dwa define'y ;)... jeden do wstawiania do napisów, drugi do użycia
    > jako pojedynczy znak. Czy da się to może jakoś pogodzić??

    Da się.

    Masz

    #define MOJ_ZNAK "\1"

    I możesz potem zrobić tak:

    ch = MOJ_ZNAK[0];

    Zwróć uwagę że zapis "/1" w języku C oznacza faktycznie tablicę
    typu "const char[2]". Pierwszym znakiem jest /1 a drugim zero (ASCIIZ).
    Zapis ch = MOJ_ZNAK[0]; preprocesor rozwinie według Twojego #define
    i kompilator to zobaczy jako:

    ch = "/1"[0];

    i nie powinien mieć problemów, mimo iż to może dziwnie wyglądać :-)

    Zaletą takiego rozwiązania jest pojedynczy #define.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: