zoukankan      html  css  js  c++  java
  • NSlog输出

    NSLog的定义

      void NSLog(NSString *format, …);

     

      基本上,NSLog很像printf,同样会在console中输出显示结果。不同的是,传递进去的格式化字符是NSString的对象,而不是char *这种字符串指针。

     


    实例

      NSLog可以如下面的方法使用:

     

      NSLog (@"this is a test");

     

      NSLog (@"string is :%@", string);

     

      NSLog (@"x=%d, y=%d", 10, 20);

     

      但是下面的写法是不行的:

     

      int i = 12345;

     

      NSLog( @"%@", i );

     

      原因是, %@需要显示对象,而int i明显不是一个对象,要想正确显示,要写成:

     

      int i = 12345;

     

      NSLog( @"%d", i );

     

    格式


      NSLog的格式如下所示:

     

      %@ 对象

     

      %d, %i 整数

            %u 无符整形

            %f 浮点/双字

            %x, %X 二进制整数

            %o 八进制整数

            %zu size_t%p 指针

            %e 浮点/双字 (科学计算)

            %g 浮点/双字

             %s C 字符串

            %.*s Pascal字符串

            %c 字符

            %C unicha

            r%lld 64位长整数

         (long long)%llu 无符64位长整数

            %Lf 64位双字



    1几个 CGRect 函数例子

    1.CGRectOffset使用从源CGRect偏移的原点来创建矩形
            float offset = 25.0;
        CGRect r1 = CGRectMake(100, 100, 100, 100);
        CGRect r2 = CGRectOffset(r1, offset, offset);

    2.CGRectIntersectsRect允许我们确定两个矩形是否相交
        float offset = 25.0;
        CGRect r1 = CGRectMake(100, 100, 100, 100);
        CGRect r2 = CGRectMake(150, 150, 100, 100);
        if (CGRectIntersectsRect(r1, r2))
        {
            NSLog(@"intersecting");
        }
    3.NSStringFromCGRect可以用来把CGRect显示到控制台
        CGRect r1 = CGRectMake(100, 100, 100, 100);
        NSLog(@"rect:@%",NSStringFromCGRect(r1));  
    NSLog(@"rect:%@",NSStringFromCGRect([moduleView frame]));    
    NSLog(@"rect:%@",NSStringFromCGRect([navScrollView frame]));
     
    同样,CGRectFromString允许我们根据一个字符串创建一个CGRect:
        NSString *r = @"{0,0},{100,100}";
        CGRect r1 = CGRectFromString(r);


    使用对应的转换
    NSStringFromCGPoint   NSStringFromCGSize   NSStringFromCGRect  NSStringFromCGAffineTransform   NSStringFromUIEdgeInsets
    比如
    NSLog(@"rect1: %@", NSStringFromCGRect(rect1));

  • 相关阅读:
    Combine 框架,从0到1 —— 4.在 Combine 中使用计时器
    Combine 框架,从0到1 —— 4.在 Combine 中使用通知
    Combine 框架,从0到1 —— 3.使用 Subscriber 控制发布速度
    Combine 框架,从0到1 —— 2.通过 ConnectablePublisher 控制何时发布
    使用 Swift Package Manager 集成依赖库
    iOS 高效灵活地配置可复用视图组件的主题
    构建个人博客网站(基于Python Flask)
    Swift dynamic关键字
    Swift @objcMembers
    仅用递归函数操作逆序一个栈(Swift 4)
  • 原文地址:https://www.cnblogs.com/wangzhen-Me/p/4870938.html
Copyright © 2011-2022 走看看