종로5가역 2번출구, 큰 길 안쪽에 위치한 '남해 굴국밥'.

각굴은 너무 큰 경우가 있지만 굴국밥에 들어가는 굴은 적당해서 좋습니다.

 

굴의 양은 흡족할 정도로 많지 않아 아쉽긴 했지만 맛은 좋네요.

메뉴에 홍어도 있다는 걸 보고서 다음 날에도 방문했습니다.

 

위 사진은 홍어전. 혼자 먹기엔 많은 양이라 3점 남겼습니다.

오랜만에 입 안이 다 벗겨졌네요. 혓바닥까지 벗겨지는 경험은 처음이었습니다. 😂😂😂😂😂

🍖🍖🍖🍖 (4/5점)

 

' > 먹을것' 카테고리의 다른 글

남해 굴국밥  (0) 2020.10.24
샘표 시골식 된장국  (0) 2020.10.01
보닐라 감자칩  (0) 2020.09.30
인생에일  (0) 2020.09.22
리스토란테 냉동피자  (0) 2020.09.11
농심 김치 큰사발  (0) 2020.08.16

5. 데이터형 규정

5. 2 고정 크기 정수

규정

  1. 정수형의 크기가 중요하다면 고정 길이 데이터형을 char, short, int, long, 또는 long long형 대신 사용해야 한다. 부호 없는 또는 부호 있는 고정 길이 정수형은 아래 표와 같다.
Integer Width Signed Type Unsigned Type
8 bits int8_t uint8_t
16 bits int16_t uint16_t
32 bits int32_t uint32_t
64 bits int64_t uint64_t
  1. 키워드인 short, long은 사용할 수 없다.
  2. 키워드인 char의 사용은 문자열에 관한 선언 및 연산으로 제한되어야 한다.

이유

C90 표준에서는 의도적으로 char, short, int, long 그리고 long long 형에 대해 고정되지 않은 크기를 허용함으로써 코드 이식성에 문제를 야기했습니다. C99 표준에서도 이 문제를 해결하지 않았지만, 위 테이블에서 보듯 stdint.h 헤더 파일에 정의된 정수형을 공개했습니다.

 

이식 가능한 고정 크기 정수형에 대한 또 다른 참조 문서:

barrgroup.com/embedded-systems/how-to/c-fixed-width-integers-c99

C99 표준과 호환되지 않는 컴파일러의 경우 typedef를 이용해 고정크기 데이터형을 정의하는 것이 허용됩니다. 필요하다면 컴파일시 확인하는 과정이 꼭 필요합니다.

시행

빌드시 매번 자동화된 도구를 이용해 short, long 키워드에 대한 체크를 해야 합니다. 코드 검토시 또 다른 규정 준수에 대해 검토해야 합니다.

 

'Digital Developer > Embedded C Coding Standard' 카테고리의 다른 글

[ECCS] 고정 크기 정수  (0) 2020.10.18
[ECCS] 데이터형 명명 관례  (0) 2020.10.17
[ECCS] 파일 템플릿  (0) 2020.10.17
[ECCS] 소스 파일  (0) 2020.10.17
[ECCS] 헤더 파일  (0) 2020.10.10
[ECCS] 모듈 명명 관례  (0) 2020.10.10

5. 데이터형 규정

5. 1 명명 관례

규정

  1. 구조체(structure), 유니언(union) 및 열거(enumeration)를 포함한 모든 새로운 데이터형의 이름은 소문자와 단어 내부의 밑줄로만 구성되어야 하며 ‘_t‘로 끝나야 한다.
  2. 모든 새로운 구조체, 유니언형 및 열거형은 typedef 통해 명명되어야 한다.
  3. 모든 public 데이터형의 이름은 모듈 이름과 밑줄을 앞에 붙여야 한다.

예시

typedef struct
{
  uint16_t count;
  uint16_t max_count;
  uint16_t _unused;
  uint16_t control;
  
} timer_reg_t;

이유

데이터형 이름과 변수 이름은 종종 유사합니다. 예를 들어, 주변장치에서 타이머 제어 레지스터 세트가 'timer_reg' 이름을 호출합니다. 레지스터 레이아웃을 정의하는 구조체 정의를 구분하기 위해서는 'timer_reg_t'와 같이 고유한 이름으로 새로운 유형을 만든는 것이 중요합니다. 필요한 경우 이같은 유형을 사용하여 'timer_reg_shadow'같은 타이머 레지스터의 복사본을 만들 수 있습니다.

시행

각 빌드 전, 자동화 도구를 사용해 새 소스나 수정된 소스 코드를 검색하여 키워드 struct, union 또는 enum이 typedef 문이나 익명의 선언 내에서만 사용되는지 확인해야 합니다. 코드 검토시 새로운 형(type)에 대한 명명 규정을 시행해야 합니다.

 

'Digital Developer > Embedded C Coding Standard' 카테고리의 다른 글

[ECCS] 고정 크기 정수  (0) 2020.10.18
[ECCS] 데이터형 명명 관례  (0) 2020.10.17
[ECCS] 파일 템플릿  (0) 2020.10.17
[ECCS] 소스 파일  (0) 2020.10.17
[ECCS] 헤더 파일  (0) 2020.10.10
[ECCS] 모듈 명명 관례  (0) 2020.10.10

+ Recent posts