Przesuwanie wskaznika pod 64 bit

0

mam pytanie..
mam sobie taka tablice:

char cos[10], tmp;
int i=0;
strcpy(cos, "ABCDEF");

to wiec sie pytam czy jesli robie tak pod 63 bitami to jest to dobrze?:

i=1;
tmp = *(cos+i);  // tmp == 'B' ??
i++;
tmp = *(cos+i);  // tmp == 'C' ??

no bo int ma inna wielkosc pod 64 bitami..
Pytanie prozaiczne i moze glupie lecz w wiekszym programie to dziala pod 32 bit a pod 64 bit krzaczki wychodza (zle jest przesuniety wskaznik :-( )

EDIT:
A nie mam mozliwosci kompilacji 64 bit :-( zeby to sprawdzic

0
bartosak napisał(a)

to wiec sie pytam czy jesli robie tak pod 63 bitami to jest to dobrze?:

i=1;
tmp = *(cos+i);  // tmp == 'B' ??
i++;
tmp = *(cos+i);  // tmp == 'C'

A dlaczego miałoby nie być dobrze??? Zmienna i jest indexem więc przesunięcie (bajtowe) uzależnione jest od typu wskaźnika (w tym przypadku

char

).

0

zeby MarcinEc sie nie denerwowal sam sobie odpowiem ze to nie ma znaczenia...

sprawdzilem na kompie 64 bit Linux Gentoo kolegi ;-)

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