iOS开发之c语言基础-高级指针

    //

//  main.m

//  c9- 高级指针

//

//  Created by dllo on 15/10/16.

//  Copyright (c) 2015 dllo. All rights reserved.

//


#import <Foundation/Foundation.h>

#import "shu.h"

#import "ArrayOperation.h"



#define IOS



#define KApple int *

typedef int * QG;

//#define 小白试的替换

//typedef 类型重命名




// 预编译指令

//预编译, 编译,运行

//命名规范 1, K+驼峰命名法 2,纯大写

#define kMaxStuMum 5



#define sum(A, B) ((A) + (B))

//



#define MUL(A, B) ((A) * (B))

//都打上括弧是为了防止变量是个表达式,先算表达式的答案,以免发生错误



int main(int argc, const char * argv[]) {

   

//    student stu[] = {

//        {"yuhao", 'm', 1, 98},

//        {"wangqiong", 'n', 2, 96},

//        {"wangqiong", 'n', 2, 96}

//    };

//

    //student stu = {"yuhao", 'm', 1, 98};

    //定义结构体类型的指针变量

    //student *p = NULL;

    //指向结构体类型的变量

  //  p = &stu;

    

    //通过指针访问结构体变量的成员

//    (*p).score = 98;

//    p->score = 98;

    

    //2种方式都可以

    

    //定义一个点坐标的结构体(point),包含2float成员,x,y

    

    

    

    

//    point point1 = {0};

//    point point2 = {0};

//    point *p1 = &point1;

//    point *p2 = &point2;

//    (*p1).x = 3.1;

//    (*p1).y = 4.7;

//    (*p2).x = 3.7;

//    (*p2).y = 6.7;

//    float b = (p1->x - p2->x) * (p1->x - p2->x) + ( p1->y - p2->y) * ( p1->y - p2->y) ;

//    float len = sqrt(b);

//    printf("%f", len);

    

    //

//    student stu ={1,"lan ou", 'm', 98};

//    student  *p3 = &stu;

//    p3->name[0] -= 32;

//    for (int i = 0; i < strlen(p3->name); i++) {

//        if (p3->name[i] == ' ') {

//            p3->name[i] = '_';

//        }

//    }

//   student stu ={1,"lan ou", 'm', 98};

//    char *p = stu.name;

//  //  char *p1 = &(stu.sex);

//    *p -= 32;

//    for (int i = 0; i < strlen(p); i++) {

//                if (p[i] == ' ') {

//                   p[i] = '_';

//                }

//            }

//  

//    printf("%s ",p);

//

//    student stu[5] = {

//        {"qingchung", 'm', 94, 32},

//        {"qingung", 'm', 98, 32},

//        {"qichung", 'f', 94, 32},

//        {"qiddngchung", 'm', 96, 32},

//        {"qinhung", 'm', 67, 32}

//    };

//    student *p = stu;

//    printf("%d",p[1].score);

//    printf("%d",(p + 1)->score);

//    printf("%d",(*(p + 1)).score);

    

//

//    student *p = stu;

//    for (int i = 0; i < kMaxStuMum; i++) {

//        if (p[i].sex == 'm') {

//           // 分数加10 超过100100

//            p[i].score = p[i].score + 10 > 100 ? 100 :  p[i].score + 10;

//           

//        }

//    }

//    for (int i = 0; i < 5; i++) {

//        printf("%s %c %d %d", p[i].name, p[i].sex, p[i].score, p[i].number);

//    }

//    

//

//

//    int a[6] = {1,33,45,56,43,432};

//    printarray(a, 6);

//    sortarray(a, 6);

//    printarray(a, 6);

    

    

//    int ret1 = sum(3,5);

//    printf("%d ", ret1);

//    

//    int ret = MUL(3,5 + 2);

//    printf("%d", ret);

    //#define 小白试的替换

    //typedef 类型重命名


//    KApple p= NULL, m = NULL;//报错,因为define是小白一样的替换,所以m报错.

//    QG  q = NULL, n = NULL;

//    int a = 3;

//  

//      p = &a;

//      m  = &a;

//      q = &a;

//      n = &a;

//

   // 宏定义

    

    //进入预编译

//#ifdef IOS

//    int a= 3;

//    printf("%d",a);

//#else

//    int a =3;

//    printf("%d",a);

//#endif

//

//#if IOS

//    

//        printf("aaaa");

//#else

//    

//        printf("bbbbb");

//#endif

//    

    

    

    

    return 0;

}


原文地址:https://www.cnblogs.com/yuhaojishuboke/p/5043133.html