码迷,mamicode.com
首页 > 移动开发 > 详细

ios基础 笔记整理 第一章 第一节

时间:2015-06-23 19:31:28      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:

一:NSString与NSInteger的互换

NSInteger转化NSString类型:[NSString stringWithFormat: @"%d", NSInteger];

NSString转化 NSInteger类型:NSInteger = [NSString intValue];  

*其它几个同理   [NSString boolValue]、[NSString floatValue]、[NSString doubleValue]

 

二:Objective-c中集合里面不能存放基础类型,比如int string float等,只能把它们转化成对象才可以存放,就是类NSNumber

技术分享
a. NSNumber的用法如下

把基本类型包装成对象的便利构造函数

-(id) initWithChar : (char) value;

-(id) initWithInt : (int) value;

-(id) initWithFloat : (float) value;

-(id) initWithBool: (BOOL) value;

把基本数据类型包装成对象的便利构造器

+(id) numberWithChar : (char) value;

+(id) numberWithInt : (int) value;

+(id) numberWithFloat : (float) value;

+(id) numberWithBool : (BOOL) value;

从NSNumber中获取值

-(char) charValue;    -(int) intValue;      -(float) floatValue;     (BOOL) boolValue;    (NSString *) stringValue; 
技术分享

b、在集合类中是不可以存储nil(空的),因为nil作为nil的结束符,那么我们如何来存储空对象呢?该NSNull出场啦,其功能是把null包装成对象,

+(NSNull *) null;

 

三:NSDATA与NSString互转

NSData,数据,当我们需要把一些信息写入到文件里或发送到网络上,我们需要把这些数据转换下,变成纯粹的0、1字符流

 NSString * str = @"hello, world!";
 NSData * data = [str dataUsingEncoding:NSUTF8StringEncoding]; //NSString转换成NSData类型
 NSLog(@"%s", data.bytes);
 NSString * newStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
 NSLog(@"%@", newStr);

 

四:去除输入框空格(NSString也适用)

技术分享
去除两端空格

NSString *temp = [textField.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

去除两端空格和回车

NSString *text = [temp stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet ]];
技术分享

 

五:IBOutlet,IBAction说明

实例:

@property(weak,nonatomic) IBOutlet UITextField *textFile1;

@property(weak,nonatomic) IBOutlet UILabel *lable1; -(IBAction)save:(id)sender;

IBOutlet 输出口是使用关键字IBOutlet声明的实例变量。控制器头文件中的输出口声明应如下所示: 在实例变量声明前添加了IBOutlet语句,这表示对象在Interface Builder中创建的。一旦将对象链接到一个出口, 就可以像访问任何自己创建的对象一样访问它。就编译器而言,IBOutlet并未执行任何操作。它的唯一作用是告诉Interface Builder,此实例变量将被连接到nib中的对象。你创建的任何需要连接到nib文件中的对象 的实例变量都必须以IBOutlet关键字开头。打开Interface Builder时,它会在项目头文件中扫描此关键字,你可以根据这些(且只能根据这些)变量将代码连接到nib。

IBOutlet关键字的定义如下所示:

#ifndef IBOutlet

#define IBOutlet

#endif

IBAction 操作是控制器类中的方法。它们也是通过特殊关键字IBAction声明的,该关键字告诉Interface Builder,此方法是一个操作,且可以被某个控件触发。

 

六 指针类型

  • short 短型 ,修饰int、double 
  • long 长型,修饰int、double 
  • signed 有符号型,修饰int、char 
  • unsigned 无符号型,修饰int、char

对于类型修饰符需要做如下解释

  1. 这些修饰符经常用来修饰int型,在修饰int类型时int可以省略; 
  2. short和long会改变int型的长度,不同编译器项长度不相同,但是short长度不大于int,int长度不大于long; 
  3. signed、unsigned不改变类型长度,仅仅表示最高位是否为符号位,unsigned表示大于等于0的正数;

当然有时候我们必须清楚每个类型占用的字节,下表列出常用数据类型占用的存储空间

技术分享

注意:char类型是最小的数据类型单位,在任何类型的编译器下都是占用1个字节,char类型的变量赋值可以直接赋值等于某个字符也可以赋值为整数(对应的ASCII值);可以使用两个long来修饰一个整形(就是经常使用的8字节的整形long long),但是两个long不能修饰double而且也不存在两个short,否则编译警告;一个浮点型常量如果后面加上f编译器认为它是float类型,否则认为double类型,例如10.0是double类型,10.0f是float类型。

七:IBOutlet,IBAction说明

C语言中有34中运算符,同C#、Java等语言没有太大的区别,这里指列出一些注意事项

  1. 关系运算符为真就返回1,为假就返回0;在条件语言中非0即真(负数、正数均为真),只有0为假 ; 
  2. C语言可以不保存关系运算符的值 ; 
  3. 逗号表达式最终的值是最后一个表达式的值;

针对上面几点看以下例子

//
//  main.c
//  C语言基础
//
//  Created by Kenshin Cui on 14-7-12.
//  Copyright (c) 2014年 cmjstudio. All rights reserved.
//

#include <stdio.h>


int main(int argc, const char * argv[]) {
    int a=2>1,b=2<1,c=99,d=0;
    int f=0,g=0,h=0,e=(f=3,g=4,h=5);
    
    a>0;//没有保存运算结果
    
    printf("%d,%d\n",a,b);//结果:1,0
    
    if(c){//可以通过
        printf("true.\n");
    }
    if(d){//无法通过
        printf("false\n");
    }
    
    printf("%d\n",e);//结果:5
    return 0;
}

常用函数

printf()函数

printf()函数用于向标准输出设备输出数据,配合格式符可以完成强大的输出功能,上面的例子中我们已经使用了这个函数。

通常我们的输出不是固定内容而是包含某些变量,此时需要用到格式符,常用格式符如下

技术分享

对于格式符的输出宽度和浮点数的小数位我们可以进行精确的控制

//
//  main.c
//  C语言基础
//
//  Created by Kenshin Cui on 14-7-12.
//  Copyright (c) 2014年 cmjstudio. All rights reserved.
//

#include <stdio.h>


int main(int argc, const char * argv[]) {
    int a=16;
    float b=79.3f;
    printf("[a=%4d]\n",a);
    printf("[a=%-4d]\n",a);
    printf("[b=%10f]\n",b);
    printf("[b=%.2f]\n",b);
    printf("[b=%4.2f]\n",b);
    return 0;
}

运行结果如下

技术分享

从运行结果我们不难发现格式符%前的正数可以设置前端补齐,负数设置后端对齐,如果数据的总长度超过设置的修饰长度,则按照实际长度显示;小数点后的整数用于控制小数点后保留小数位的长度。

scanf()函数

scanf()函数用于从标准输入设备接收输入数据

//
//  main.c
//  C语言基础
//
//  Created by Kenshin Cui on 14-7-12.
//  Copyright (c) 2014年 cmjstudio. All rights reserved.
//

#include <stdio.h>


int main(int argc, const char * argv[]) {
    int a,b,c;
    scanf("%d,%d,%d",&a,&b,&c);//此时需要输入:1,2,3 然后回车
    printf("a=%d,b=%d,c=%d\n",a,b,c);
    return 0;
}

 

ios基础 笔记整理 第一章 第一节

标签:

原文地址:http://www.cnblogs.com/wangchaofly/p/4595911.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!