objective-C 的Hello World!

來源:互聯網
上載者:User

 

//  main.m//  HelloWorld//  Created by jimmy.yang on 11-1-24.//  Copyright 2011 __MyCompanyName__. All rights reserved.#import <Foundation/Foundation.h>//定義“幾何形狀類型”枚舉typedef enum{kCircle,kRectangle,kOblatesShperoid} ShapeType;//定義“幾何形狀顏色”枚舉typedef enum{kRedColor,kGreenColor,kBlueColor} ShapeColor;//定義“幾何形狀矩形地區”結構typedef struct{int x,y,width,height;} ShapeRect;//定義“幾何形狀”結構typedef struct{ShapeType type;ShapeColor fillColor;ShapeRect bounds;}Shape;//返回“枚舉顏色”的名稱NSString *colorName(ShapeColor colorName){switch (colorName) {case kRedColor:return @"red";break;case kGreenColor:return @"green";break;case kBlueColor:return @"blue";break;default:return @"no clue";break;}}//colorName//畫圓void drawCircle(ShapeRect bounds,ShapeColor fillColor){NSLog(@"drawing a circle at (%d,%d,%d,%d) in %@",bounds.x,bounds.y,bounds.width,bounds.height,colorName(fillColor));}//drawCircle//畫矩形void drawRectangle(ShapeRect bounds,ShapeColor fillColor){NSLog(@"drawing a rectangle at (%d,%d,%d,%d) in %@",bounds.x,bounds.y,bounds.width,bounds.height,colorName(fillColor));}//drawRectangle//畫橢圓形void drawEgg(ShapeRect bounds,ShapeColor fillColor){NSLog(@"drawing an egg at (%d,%d,%d,%d) in %@",bounds.x,bounds.y,bounds.width,bounds.height,colorName(fillColor));}//drawEgg//畫幾何形狀void drawShapes(Shape shapes[],int count){int i;for(i=0;i<count;i++){switch (shapes[i].type) {case kCircle:drawCircle(shapes[i].bounds,shapes[i].fillColor);break;case kRectangle:drawRectangle(shapes[i].bounds,shapes[i].fillColor);break;case kOblatesShperoid:drawEgg(shapes[i].bounds,shapes[i].fillColor);break;default:break;}}}//drawShapes//主程式入口int main(int argc, char *argv[]){   Shape shapes[3];ShapeRect rect0 ={0,0,10,30};shapes[0].type = kCircle;shapes[0].fillColor = kRedColor;shapes[0].bounds = rect0;ShapeRect rect1 = {30,40,50,60};shapes[1].type = kRectangle;shapes[1].fillColor = kGreenColor;shapes[1].bounds = rect1;ShapeRect rect2 = {15,18,37,39};shapes[2].type = kOblatesShperoid;shapes[2].fillColor = kBlueColor;shapes[2].bounds = rect2;drawShapes(shapes, 3);return (0);}

Console視窗的運行結果:

2011-01-25 13:49:05.978 HelloWorld[734:a0f] drawing a circle at (0,0,10,30) in red
2011-01-25 13:49:06.016 HelloWorld[734:a0f] drawing a rectangle at (30,40,50,60) in green
2011-01-25 13:49:06.018 HelloWorld[734:a0f] drawing an egg at (15,18,37,39) in blue

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.