zoukankan      html  css  js  c++  java
  • 【iOS 入门】block (1)

    学习block之前 先复习C语言函数指针。

    定义:

    函数返回值类型 (* 指针变量名) (函数参数列表);

    例如:

    int(*p)(int, int);

    解释:

    这个语句就定义了一个指向函数的指针变量 p。首先它是一个指针变量,所以要有一个“*”,即(*p);其次前面的 int 表示这个指针变量可以指向返回值类型为 int 型的函数;后面括号中的两个 int 表示这个指针变量可以指向有两个参数且都是 int 型的函数。所以合起来这个语句的意思就是:定义了一个指针变量 p,该指针变量可以指向返回值类型为 int 型,且有两个整型参数的函数。p 的类型为 int(*)(int,int)。

    下篇是特别好的教程

    http://c.biancheng.net/view/228.html

    测试代码

    #import <Foundation/Foundation.h>
    
    NS_ASSUME_NONNULL_BEGIN
    
    @interface TestBlock : NSObject
    
    -(void)test;
    @end
    
    NS_ASSUME_NONNULL_END
    #import "TestBlock.h"
    
    @implementation TestBlock
    //声明了一个c语言方法 oc兼容c语言语法。
    int max(int a,int b );
    //实现test方法
    -(void)test{
      //声明一个函数指针变量。叫*bigger; 指向有两个参数的(int a ,int b )方法 。方法返回值为int型 。
    int (* bigger)(int a ,int b ) ;
      //指针赋值 bigger
    = max ;
      //使用指针 bigger
    int c =( *bigger)(1,2); NSLog(@"指针函数调用结果:%d",c); }
    //实现已声明的方法。
    int max(int a ,int b ){ return a>b ? a : b ; } @end
  • 相关阅读:
    python用户交互
    python注释
    python变量
    命令行模式和python交互模式
    python解释器
    利用excel生成word,批量插入图片、题注、标题等格式
    520了,用32做个简单的小程序
    利用excel生成word,批量插入图片、题注、标题等格式
    数据结构与算法
    MySQL8.0-INFORMATION_SCHEMA增强
  • 原文地址:https://www.cnblogs.com/mamamia/p/12200754.html
Copyright © 2011-2022 走看看