zoukankan      html  css  js  c++  java
  • iOS中的NSValue

    struct student{
        char name[20];
        char gender;
    };
    typedef struct student Student;
    int main(int argc, const char * argv[]) {
        @autoreleasepool {
           
        //NSValue 数值类,将指针,结构体等转换成对象
            int a = 10;
            int *p = &a;
            NSMutableArray *array = [NSMutableArray arrayWithCapacity:1];
            NSValue *value = [NSValue valueWithPointer:p];
            [array addObject:value];
            
            //void *是泛型
           int *newP = [value pointerValue];
            
        
            NSLog(@"%d",*newP);
            //NSRange
            
            NSRange range = {14,35};
            //NSRange range1 = NSMakeRange(3, 5);
           // [array addObject:range1];
            //[array addObject:range];
            //将NSRange 结构体转换为NSValue
            NSValue *rangeValue = [NSValue valueWithRange:range];
            
            [array addObject:rangeValue];
            //将NSRange 转换成NSRange
            NSRange newRange = {0};
            newRange = [rangeValue rangeValue];
            NSLog(@"%lu,%lu",newRange.location,newRange.length);
        
            
            Student stu =  {"laowang",'m'};
        
        
        //自定义结构体转换成NSVlaue对象
            NSValue *stuValue = [NSValue valueWithBytes:&stu objCType:@encode(Student)];
            //NSValue 对象 转换成结构体
            Student newStu = {0};
            [stuValue getValue:&newStu];
            NSLog(@"%s,%c",newStu.name,newStu.gender);
  • 相关阅读:
    JDBC学习笔记
    hdfs文件格式
    全国疫情防控监控平台开发
    MySQL学习笔记
    拖拽表单生成
    Cython加密(含Windows和Linux)
    pcl 文字点云
    新装Ubuntu系统--常用软件安装配置
    GIT
    Data Analysis With Python
  • 原文地址:https://www.cnblogs.com/wohaoxue/p/4723650.html
Copyright © 2011-2022 走看看