🔥 CLanguageStandard
249자
3분
C 언어로 작성된 소스 코드를 컴파일할 때, 어떤 C 언어 표준을 사용할지 지정해야 할 때가 있습니다. Swift 패키지 매니저는 CLanguageStandard
열거형을 통해 다양한 C 언어 표준을 지원하고 있습니다.
CLanguageStandard
열거형은 다음과 같은 케이스들을 제공합니다.
enum CLanguageStandard { case c89 case c90 case c99 case c11 case c17 case c18 case c2x case gnu89 case gnu90 case gnu99 case gnu11 case gnu17 case gnu18 case gnu2x case iso9899_1990 = "iso9899:1990" case iso9899_199409 = "iso9899:199409" case iso9899_1999 = "iso9899:1999" case iso9899_2011 = "iso9899:2011" case iso9899_2017 = "iso9899:2017" case iso9899_2018 = "iso9899:2018" }
swift
각 케이스는 특정 C 언어 표준을 나타냅니다. 예를 들어:
c89
,c90
: ANSI C와 ISO C90 표준을 나타냅니다.c99
: ISO/IEC 9899:1999 표준을 나타냅니다.c11
: ISO/IEC 9899:2011 표준을 나타냅니다.gnu89
,gnu90
: GNU 확장을 포함한 ANSI C와 ISO C90 표준을 나타냅니다.iso9899_1990
: ISO/IEC 9899:1990 표준을 나타냅니다.
이 외에도 다양한 C 언어 표준과 GNU 확장을 지원하고 있습니다.
실제로 Swift 패키지에서 C 언어 표준을 지정하려면, Package.swift
매니페스트 파일에서 다음과 같이 설정할 수 있습니다.
let package = Package( name: "MyPackage", targets: [ .target( name: "MyTarget", cLanguageStandard: .c11 // C11 표준 사용 ), // ... ] )
swift
위 예제에서는 MyTarget
이라는 타깃의 cLanguageStandard
속성을 .c11
로 설정하여, C11 표준을 사용하도록 지정했습니다.
이렇게 CLanguageStandard
열거형을 활용하면, C 언어로 작성된 코드를 컴파일할 때 원하는 C 언어 표준을 간편하게 선택할 수 있습니다. 패키지 개발자는 이를 통해 호환성과 이식성을 높일 수 있겠죠.
앞으로도 C 언어 코드와 함께 작업할 일이 많다면, CLanguageStandard
가 제공하는 다양한 C 언어 표준 옵션을 적극 활용해 보시기 바랍니다.