2013년 1월 31일 목요일

Objective-C Chapter 2

#import <Foundation/Foundation.h> 
//import 부분 : 파일에 있는 정보를 그대로 가져오라는 명령어
//Foundation.h 파일을 불러온 이유는 프로그램에서 사용할 다른 클래스와 함수에 대한 정보가 들어있기 때문

int main(int argc, const char * argv[])
// 이 프로그램의 이름은 main
// int 부분 : main이 반환하는 값이 정수임을 나타냄
// "{" "}" 중괄호 부분에 모든 프로그램 명령어가 실행됨 따라서 중괄호 안에 명령어들을 집어넣어야 함
// 명령어의 끝은 세미콜론 ";" 으로 표현함

{
    // @autoreleasepool : 개인의 어플리케이션이 객체를 생성하며 사용하는 메모리를 시스템이 효과적으로 관리하도록 하는 기법
    //                    @autoreleasepool 이 명령어 안에는 하나의 명령문만 존재해야 함
    
    @autoreleasepool {
        
        // NSLog : NSString 객채라고 하며, 간단한 인수를 표시하거나 로깅(Logging)하는 함수
        NSLog(@"Programming is fun!");
        
        // TRY 문장표시추가 : NSLog 코드 추가
        NSLog(@"And programming in Objective-C is even fun!");

        // TRY "/n" 이용해서 한줄띄우기
        NSLog(@"Programming is fun!\nAnd programming in Objective-C is even fun!");
        
        // TRY 변수값 표시해보기
        int sum; // int 는 integer(정수) 의 약자
        
        sum=50+25;
        
        NSLog(@"The sum of 50 and 25 is %i", sum); // %i : NSLog 함수가 이해하는 특수문자 % + 정수값 i
        
        // TRY 측정결과 예측해보기
        int value1, value2, sum12;
        
        value1 = 50;
        value2 = 25;
        sum12 = value1 + value2;

        NSLog(@"The sum of %i and %i is %i", value1, value2, sum12);
        // %i %i %i 결과 예측해보기
        
        // 2.5 연습문제 2번
        NSLog(@"In Objective-C, lowercase letters are significant.\nmain is where program execution begins.\nOpen and closed braces enclose program statements in a routine.\nAll program statements must be terminated by a semicolon.");
        
        // 2.5 연습문제 3번
        int a;
        a = 1;
        NSLog(@"Testing...");
        NSLog(@"....%i", a);
        NSLog(@"...%i", a+1);
        NSLog(@"..%i", a+2);
        
        // 2.5 연습문제 4번
        int p41, p42, psum4;
        p41 = 87;
        p42 = 15;
        psum4 = p41 + p42;
        NSLog(@"The sum of %i and %i is %i", p41, p42, psum4);
        
        // 2.5 연습문제 5번 (오류수정)
        int psum5; // INT 대문자 > 소문자 int
        // COMPUTE RESULT
        psum5 = 25 + 37 - 19;
        // DISPLAY RESULTS
        NSLog(@"The answer is %i", psum5); // 따음표 두개짜리 사용해야함(조심)
        
        // 2.5 연습문제 6번
        int panswer6, presult6;
        panswer6 = 100;
        presult6 = panswer6 - 10;
        NSLog(@"The result is %i\n", presult6 + 5); // result 값은 presult6 + 5 한 95 값이 나옴
        
         
         // [ ?   ? ]; 의미는  :  [ 객체(인스턴트)or클래스 <한칸띠고> 매서드(method) ];
         // 위에것의 의미 : 객채나 클래스에 method 행위를 한다!
         // 다음은 차를 예를들어 설명
         
        // [classOrInstance method];
        // [receiver message];
        
        // yourCar = [Car new];  // Car : 클래스, yourCar : 객체(인스턴트), new : 클래스 매서드(method)
        // [yourCar prep];
        // [yourCar drive];  // 운전한다 : 인스턴트 매서드(method)
        // [yourCar wash];
        // [yourCar getGas];
        // [yourCar service];
        
        // [yourCar topDown];
        // [yourCar topUp];
        // currentMileage = [yourCar odometer];
        
        // [yourCar setspeed: 55];

        // [sistersCar drive];
        // [sistersCar wash];
        // [sistersCar getGas];
         
        // 차를 예로 들기는 했지만 우리가 이용할 객체는 창, 사각형, 텍스트조각, 계산기, 재생목록 등등 컴퓨터와 관련된것
        // [myWindow erase];  // 창의 내용을 삭제한다
        // theArea = [myRect area];  // 사각형 영역을 계산한다
        // [userText spellCheck];  // 텍스트의 철자를 검사한다
        // [deskCalculator clearEntry];  // 마지막 입력내용을 삭제한다
        // [favoritePlaylist showSongs];  // 선호하는 곡 목록에서 곡을 보여준다
        // [phoneNumber dial];  // 전화번호로 전화를 건다
        // [myTable reloadData];  // 갱신된 표의 데이터를 보여준다
        // n = [aTouch tapCount];  // 화면이 눌린 횟수를 저장한다
        
        
        // 분수를 처리하는 클래스 (numerator : 분자, denominator : 분모)
        int numerator = 1;
        int denominator = 3;
        NSLog(@"The fraction is %i/%i", numerator, denominator);
        
        // 위와 같은결과 다른방법..
        int numeratorEx1, denominatorEx1;
        numeratorEx1 = 1;
        denominatorEx1 = 3;
        NSLog(@"The fraction is %i/%i", numeratorEx1, denominatorEx1);
        
    }
    
    return 0;
    // return 0 : main 의 실행을 종료하고 상태값 0을 돌려주거나 혹은 반환하도록 함
    
}

댓글 없음:

댓글 쓰기