Objective-C

Objective-C 기초문법 1

섭섭's 2024. 9. 14. 18:17

Objective-C는 기본적으로 C 언어의 구조를 따릅니다. 

 

모든 Objective-C 프로그램은 main 함수에서 시작됩니다.

 

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSLog(@"subsub");
    }
    return 0;
}

 

해당 소스코드가 기본이 되는 메인 함수 입니다.

 

Xcode에서 Objective-C 실습하기

 

 

위에서 설명드린 방식으로 Objective-C를 만들면 초기화면으로 방금 맨 위에서 설명해드린 

 

 

해당 화면이 나오게 됩니다.

 

Objective-C의 데이터 타입

정수 실수
char float
short double
int long double
long  

 

BOOL

BOOL boolValue = YES;
NSLog(@"Bool value %@", boolValue ? @"YES" : @"NO");

 

열거형

enum flag { false,true};

 

구조체

CGSize
CGPoint
CGRect

 

클래스

 

NSObject,NSString 등
NSObject *obj1; //  클래스의 객체 선언은 반드시 포인터로!!

 

정적타입과 동적타입

정적타입은 변수를 선언할 때 변수의 자료형을 구체적으로 지정하는 것을 의미합니다

 

동적타입에는 id 라는것이 있습니다.

 

void * 와 유사하며 객체에 대해서만 사용합니다.

 

또한 어떤 클래스에서 생성한 객체도 가리킬수 있습니다.

 

컴파일할 때는 타입을 체크하지 않습니다.

 

데이터 타입 수식자와 const

데이터 타입 수식자에는 

long
long long
short
unsigned
ignet

 

이 있습니다.

 

const 수식자를 사용하여 변수를 상수처럼 처리합니다.

const int age = 20;
const char ch = 'A';

 

self와 super

self는 현재 동작 중인 객체 포인터를 의미합니다

 

super 는 부모클래스에 대한 포인터를 의미합니다.

 

-(void)wiewDidUnload
{
	[super viewDidUnload];
    self.colorNames=nil;
}

-(NSInteger)tableView:(UITableView * ) tableView numberOfRowsInSection:(NSInteger)section
{
	return[self.colorNames count];
}

 

for문

swift의 for문은

fot i in 0...9
{
	print(i)
}

 

입니다.

 

하지만 Objective-C의 for문은

#import <Foundation/Foundation.h>
int main() {
int i;
for(i=0 i<10; i++) {
NSLog(@"%d" ,i);
}
return 0;
}

 

입니다.

 

for 반복문은 몇 번 정도 반복해야 할지 아는 경우에 사용하기 적합합니다.

 

다만 어떠한 조건이 되기 전에 대체 몇 번 정도 반복해야 하는지 알 수 없지만, 그 조건을 만족할 때 까지는 반복해야하는 경우도 있습니다.

 

Objective-C는 이러한 상황에 사용하기 위해 while 반복문을 제공합니다.

 

while 반복문의 형식입니다.

 

while(조건)
{
//반복실행문장
}

Objective-C

 

while 조건
{
//반복실행문장
}

Swift