unsigned 는 signed의 2배의 값을 표시할수 있다고 들었습니다
signed은 양수 음수의 값 모두 표기할수 있다고 들었는데 ..
음.. 그냥 int 하고 unsigned 와 signed의 차이가 뭔가여
unsigned는 음수가 안된다고 하는데 음수를 넣어서 값을 표시해보니까
값이 나오긴나오는데..
이러며 ㄴ안되는거 아닌가요 ?
< C언어 > 어떻게 되는건가요 .. ?
unsigned 는 signed의 2배의 값을 표시할수 있다고 들었습니다
signed은 양수 음수의 값 모두 표기할수 있다고 들었는데 ..
음.. 그냥 int 하고 unsigned 와 signed의 차이가 뭔가여
unsigned는 음수가 안된다고 하는데 음수를 넣어서 값을 표시해보니까
값이 나오긴나오는데..
이러며 ㄴ안되는거 아닌가요 ?
< C언어 > 어떻게 되는건가요 .. ?
그냥 int는 signed임. 상황에 따라 더 효율적이겠다 싶으면 unsigned를 쓰는 것으로 잘 모르면 안쓰면 됨니다.
아 int가 signed 이구나.. 상황에 따라 효율적이라 함은 unsigned 를 쓰는건데 값을 표현할 크기가 커지면 그걸 쓰는겁니까?
리얼타임 프로그램같은거 만들떄는 하드웨어에 직접 접근해서 signed / unsigned를 써야 한다고 알고있긴한데 평소같을떄 정수가 길어지면 그냥 소수로 double 쓰면되지않나요 ? 왜 unsigned 를 쓰는건가요 ?..
ㅇㅇ 그런경우도 있고 부호 비트 에 따라 연산 결과가 이상해지는 경우 도 있음 뭐 예를드렁서 char도 사실은 int 같이 numeric value인데 char과 int를 연산하면 된단말야? 근데 이 연산과정에 부호비트가 어떻게 쓰이냐도 중요한 이슈라는 거지. 근데 사실 이건 이론적으로 생각할 문제고 가독성 잇게 코드 잘짜면 이런거 생각할 피룡는 없을듯
음.. 부호비트쪽을 공부해야겠네요 .. 다들 명석하시네요 ;; 감사합니다
unsinged라 해놓고 음수를 넣으면 값이야 당근 나오지... 근데 네가 원하는 값이 아닌데 나오면 뭐해 ㅋ
음.. 아 그렇구나 ..
unsigned: 최상위 비트를 부호비트로 사용하지 않는다