64bit 머신에서 int형이 64bit가 아닌가요?
글쓴이: shs0917 / 작성시간: 금, 2005/12/09 - 4:17오전
int main(void){ printf("size of integer : %d\n", sizeof(int)); return 0; }
위의 코드를..
gcc -m64 test.c
이렇게 컴파일을 했는데요..
결과가.. size of integer : 4 라고 나오네요..
왜 8이 안나오는건지..ㅠ.ㅠ
CPU는 amp 셈프론 2800+ 64bit이구요..
gcc는 3.3.5입니다..
아.. 우분투 효리에서 컴팔 했습니다..ㅠ.ㅠ
제가 잘못한건가요? 아님 원래 결과가 저런걸까요?
절대 저럴리가 없을텐데.. 고민입니다..
Forums:
전에 들은 이야기로는 64bit OS를 쓰지 않으면 AMD의 CPU는 3
전에 들은 이야기로는 64bit OS를 쓰지 않으면 AMD의 CPU는 32bit 모드로 돌아간다고 했었던거 같은데.. 우분투 효리면 64bit OS인가요?
될대로 되라지..
아차.. 제가 그걸 빼먹었네요.. 효리양 64bit용입니다..^^예전
아차.. 제가 그걸 빼먹었네요.. 효리양 64bit용입니다..^^
예전에.. 한창 무료 배송해줄때.. 얼릉 주워온건데..^^
그나저나..
printf("%d\n", sizeof(int64_t));
이렇게 하니까.. 8바이트로 나오네요..
의문점이.. 기본 int형 자체가.. 크기가 정의된게 아니라..
머신에 따라 다르다고 알고 있었는데..
이거 제가 많이 모자른가봐요..
고수님들 가르쳐 주세요..ㅠ.ㅠ
컴퓨터가 이해할수 있는 코드는 어느 바보나 다 작성할 수 있다. 좋은 프로그래머는 사람이 이해할 수 있는 코드를 짠다 - 마틴파울러
현재 널리 쓰이는 32비트 머쉰은정수, 긴정수, 포인터가 모두 32비
현재 널리 쓰이는 32비트 머쉰은
정수, 긴정수, 포인터가 모두 32비트인 ILP32 모델입니다.
64비트 머쉰은 대개 긴정수 및 포인터가 64비트인 LP64
모델 입니다. 64 비트 플렛폼에서도 기본 정수는
32비트입니다.
아마 관련된 내용이 유닉스 네트워크 프로그래밍 전반부쯤에
나올 겁니다.
Orion Project : http://orionids.org
답변 감사합니다.^^좀 더 많은 조사가 필요할듯 하네요..^^
답변 감사합니다.^^
좀 더 많은 조사가 필요할듯 하네요..^^
컴퓨터가 이해할수 있는 코드는 어느 바보나 다 작성할 수 있다. 좋은 프로그래머는 사람이 이해할 수 있는 코드를 짠다 - 마틴파울러
위의 내용에 좀 미심쩍은 부분이 있어서 찾아보았습니다.[url]h
위의 내용에 좀 미심쩍은 부분이 있어서 찾아보았습니다.
http://www.unix.org/version2/whatsnew/login_64bit.html 한 번 long의 크기를 보세요. 제가 알기로는 윈도우즈 64비트 버전은 LLP64이고 (리퍼런스 : http://www.zdnet.co.kr/builder/dev/dotnet/0,39031607,39136563,00.htm ) Linux는 LP64입니다. 즉, 인트는 두 플랫폼 모두 32비트이지만 long의 경우 리눅스에서는 64비트, 윈도우즈는 계속 32비트죠.
https://wiki.ubuntu.com/KoreanTeam
저도 최근에 알게된 사실인데..64비트 머신에서 달라지는 것은 딱
저도 최근에 알게된 사실인데..
64비트 머신에서 달라지는 것은 딱 세개 뿐이더군요.
long, pointer type, double long
나머지는 그대로더라구요...
일하는 사람들의 희망 민주노동당 : http://www.kdlp.org
반공 교육의 성과로, 민주주의의 반대가 공산주의(또는 사회주의)라고 생각하는 사람이 많다.
답변주신 모든분들께 감사를 드립니다..^^
답변주신 모든분들께 감사를 드립니다..^^
컴퓨터가 이해할수 있는 코드는 어느 바보나 다 작성할 수 있다. 좋은 프로그래머는 사람이 이해할 수 있는 코드를 짠다 - 마틴파울러
댓글 달기