unsigned2 [C언어]암시적 형변환 C99표준(size_t(=unsigned int) 와 int 연산할 때 형변환포함) 이전 글에서 size_t 자료형 사용할 때 주의점을 적었었는데, 왜 unsigned 자료형과 signed 자료형을 연산할 때 unsigend로 변하는지 C99표준에 기반하여 설명하고 size_t(=unsigned int)와 int연산할 때 형변환 예시를 알려주겠다. 암시적 형변환은 대부분 자료형 크기가 작은쪽이 큰쪽으로 이동한다고 알고있다. 정수형 타입의 순위 char < short < int < long 실수형 타입의 순위 float < double < long double 대략적으로 보면 이렇게 되지만 같은 정수 자료형에서의 signed와 unsigned로 계산을 하면 어떻게 형변환이 이루어 지는 지도 알아 보겟다. C99표준에서 형변환 순서 하나의 피연산자가 long double형 이면 다른 피연산.. 2023. 1. 13. [C언어]size_t 자료형과 사용할 때 주의점(size_t VS unsigned int) 이번에는 size_t자료형에 대해서 알아보고 size_t와 unsigned int의 차이점은 무엇인지 size_t를 사용할 때 주의할 점을 알아보자. size_t 자료형 헤더를 인클루드해야 사용가능 해당 시스템에서 어떤 객체나 값이 포함할 수 있는 최대 크기의 데이터를 표현하는 타입 부호없는 정수형이지만 실제 데이터형은 아님 _t 를 보다 시피 size_t는 typedef를 이용한 다른 자료형의 별칭 보통 unsigned int를 사용 용도: 배열의 길이나 배열의 인덱스를 나타낼 때 사용 (size_t) -1은 비트패턴에 의해서 size_t 최대값으로 인식된다.( -1의 비트패턴은 1바이트 기준 1111 1111$_{(2)}$이다.) 그렇다면 size_t 자료형을 그냥 unsigned int로 사용하면 .. 2023. 1. 12. 이전 1 다음