삼일째 한숨도 못 자고 있습니다. -_-;

익명 사용자의 이미지

요즘 C 때문에 죽을 맛 이었는데... (도움주신 분 덕분에 해결 했습니다. 감사합니다. -))

이제는 Visual C Server랑 Java Client랑 연동하는 부분에서도 짜증나게 하는군요. -_-;

머신이 틀려서 생기는 엔디안 문제같은데... 손에 잡힐 것 같으면서도 안 잡혀서 사람 열받게
합니다. 그러게 미리미리 공부 좀 하는건데 말이죠... ㅠ.ㅠ

조금만 하고 자야지, 자야지 하다 보니까, 어느새 3일 날밤 깠습니다.

지금 제 모습은 걸인... 책상위는 책들과 쓰레기로 개판 오분전 입니다.

어머니가 첫날 새벽에 방문 한번 슬쩍 열어보신 이후로, 절대 근처에도 안 오시는 군요. -_-;

근데, 잡담을 가장한 질문 한가지만 할께요...

엔디안은 바이트 단위로 따지는 거 맞죠? 빅엔디안이던, 리틀엔디안 이던,
각 바이트 내부의 비트들은 빅 엔디안 아닌가요?

뉴스그룹에서 봤더니, \200\0\0\0\0\0\0\0 요런식으로 값을 주고, long 형으로 캐스팅해서,
-1이며, 빅엔디안 이구, 0이면 리틀엔디안(암튼 잔머리 짱입니다...) 요렇게 체크하던데...

바이트 단위는 무조건 빅이란 말을 어디서 주워 들어서리... 그렇다면 의미 없는거 아닌가요?

쓰다 보니 궁금한 게... OS 차원에서 엔디안 문제 해결 못하나요?

CPU 차원의 문제라곤 해도, 가능할 것 같은데... 이제 인텔이라면 이가 갈립니다. ㅠ.ㅠ
(사실은 제가 무식한 게 죄겠지만 이렇게라도 화풀이를...^^.)

암튼 뼈저리게 후회하고 있습니다. 공부 안 하고 띵가띵가 논 거...

휴... 요번 프로젝트 끝나면 머리깍고 산에 가서 1년동안 폐관수련 좀 해야겠습니다.

언제쯤 개념이나 잡으려나...

익명 사용자의 이미지

잘 견뎌내시길 바라겠습니다...

앞으로 그런일를 2년간 하면 왼만치 완성된 고수의 모습이 될 것입니다.

그때부턴 주의에 이쁜 얼굴만 보여주세요!

더티한 모습를 벗고...

익명 사용자의 이미지

/*
* Endian Check
*/
#include

union
{
char c[2];
short s;
} u;

int main(void)
{
u.c[0] = 0;
u.c[1] = 0;
u.s = 1;

printf( "This System is " );
if ( u.c[0] == 1 ) printf( "Little Endian(Intel).\n" );
else if ( u.c[1] == 1 ) printf( "Big Endian(Motorola).\n" );
else printf( "Error !?\n" );
return 0;
}

자료 찾아 봤슴다.~~

The Intel x86 processors and compatible are LITTLE ENDIAN types whereas most RISC processors are BIG ENDIAN, that includes most (maybe all?) SGI and SUN machines.