Objective-C (구조, 타입, 변수, 상수)

이한솔·2024년 7월 29일

Objective-C 문법 🍎

목록 보기
1/12

Objective-C 프로그램 구조

Objective-C는 Swift와 다르게 각 문장의 끝에 세미콜론을 붙여야한다.
Objective-C 프로그램의 기본 구조를 알아보자!

// 컴파일러에게 컴파일을 시작하기 전에 Foundation.h 파일을 포함하라고 지시하는 전처리기 명령
#import <Foundation/Foundation.h>


// 인터페이스 만드는 방법, 모든 객체의 기본 클래스인 NSObject 상속
@interface SampleClass:NSObject

// 인스턴스 메서드 선언
- (void)sampleMethod;

// 인터페이스 끝
@end


// 인터페이스 구현부
@implementation SampleClass

// 메소드 구현
- (void)sampleMethod {
   NSLog(@"Hello, World! \n");
}

@end


// 프로그램 실행이 시작되는 main 함수
int main() {
   /* my first program in Objective-C */
   
   // SampleClass 클래스의 인스턴스를 생성하고 초기화, sampleClass 변수에 할당
   SampleClass *sampleClass = [[SampleClass alloc] init];
   
   // sampleMethod 메서드를 호출
   [sampleClass sampleMethod]; // 출력: Hello, World!
   
   // main 함수 0을 반환, 프로그램 종료
   return 0;
}


Objective-C의 토큰

Objective-C 프로그램은 다양한 토큰으로 구성되며 토큰은 키워드, 식별자, 상수, 문자열 리터럴 또는 심볼이다.

예를 들어, 해당 코드는

NSLog(@"Hello, World! \n");

이렇게 6개의 개별 토큰으로 구성되어있는 것이다.

NSLog
@
(
   "Hello, World! \n"
)
;


데이터 타입 (C 기반)

숫자 타입

int : 일반적인 정수 타입 (32비트)
short : 작은 정수 타입 (16비트)
long : 큰 정수 타입 (32비트 이상, 시스템에 따라 다름)
long long : 더 큰 정수 타입 (64비트)
unsigned : 부호 없는 정수 타입

int anInteger = 42;

float : 단정밀도 부동 소수점 타입 (32비트)
double : 배정밀도 부동 소수점 타입 (64비트)

float aFloat = 3.14;

문자 타입

char : 문자 타입 (8비트)

char aCharacter = 'A';

객체 타입

NSString * : 문자열 객체
NSNumber * : 숫자 객체
NSArray * : 배열 객체
NSDictionary * : 딕셔너리 객체
NSData * : 바이트 데이터 객체

NSString *aString = @"Hello, Objective-C!";
NSNumber *aNumber = @123;
NSArray *anArray = @[@"Apple", @"Banana", @"Cherry"];
NSDictionary *aDictionary = @{@"Key1": @"Value1", @"Key2": @"Value2"};
NSData *aData = [NSData dataWithBytes:"Hello" length:5];

특수 데이터 타입

id : 어떠한 객체 타입이든지 받을 수 있는 범용 타입
SEL : 메소드 셀렉터를 나타내는 타입
BOOL : 논리형 타입 (YES 또는 NO 값을 가짐)

열거형

enum : 열거형을 정의하여 특정 상태나 값을 나타냄

// 열거형 예제
typedef enum {
    Red,
    Green,
    Blue
} Color;

Color favoriteColor = Green;


변수 & 상수

변수 Variable

프로그램이 조작할 수 있는 저장 영역에 부여된 이름

int age = 25;
float height = 5.9;
char initial = 'A';
int d = 3, f = 5;

상수 Constant

프로그램이 실행 중에 변경할 수 없는 고정된 값
const 키워드를 사용해서 정의할 수 있다.
#define 지시어는 텍스트 치환 방식으로 상수를 정의하며, 타입 정보를 제공하지 않는다.

const int maxItems = 100;
#define PI 3.14159
NSString *const kDefaultGreeting = @"Hello, World!";


참고자료

0개의 댓글