自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 iOS常遇面试题及答案

1、简述OC中内存管理机制。与retain配对使用的方法是dealloc还是release,为什么?需要与alloc配对使用的方法是dealloc还是release,为什么?readwrite,readonly,assign,retain,copy,nonatomic 、atomic、strong、weak属性的作用? 答(1.)内存管理机制a.引用计数 由于iOS没有垃圾回收机制,ios采

2014-10-18 16:52:49 1566

原创 移动开发过程中, 动画是必不可少的,有了动画,仿佛我们的程序有了生命一样.动画可以让我们的程序界面变化更流畅, 而不是很突兀的感觉.今天,就说一下CATransition过渡动画.

移动开发过程中, 动画是必不可少的,有了动画,仿佛我们的程序有了生命一样.动画可以让我们的程序界面变化更流畅, 而不是很突兀的感觉.今天,就说一下CATransition过渡动画. 我们先看一下过渡动画的代码实现: [objc] view plaincopyprint? // 创建 CATransition *transiti

2014-09-20 16:55:25 877

原创 判断输入的用户名和密码是否是lanoukeji以及123456。如果是,弹出alertview提示用户“欢迎回来”,如果不是,提示“用户名或者密码错误,请核对后再试”,并给出两个按钮,确定和取消。

#import "ZXHAppDelegate.h"@interface ZXHAppDelegate (){ UIView *_containerView; }@end@implementation ZXHAppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWit

2014-08-21 23:06:58 102431 1

原创 iOS 霓虹灯效果(同种颜色依次向外扩展)

#import "ZXHAppDelegate.h"@implementation ZXHAppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ self.window = [[UIWindow

2014-08-21 22:52:47 693

原创 UI中UILable字体表

主要内容FontListViewController *fontListVC = [[FontListViewController alloc] initWithStyle:UITableViewStylePlain]; UINavigationController *naivgationVC = [[UINavigationController alloc] initWithRoot

2014-08-20 09:14:23 530

原创 最强王者组(张西辉 孙晓萌 胡鹏飞 王振波)

1.内存直接赋值,引用计数不发生'变化2.collection(集合)内存管理: (1)当把一个对象放入collection(数组,字典,集合)中时,会将对象的引用计数 +1 ,因为内部做了retain操作. (2)当collection(数组,字典.集合),空间被回收时,他们会向容器中的每一个元素发送一个release消息(对应添加元素时的retain操作) (3)当从collec

2014-08-15 22:08:19 1521

原创 OC 内存管理初级

黄金法则:如果对一个对象进行了alloc retain copy之后,就拥有了该对象的所有权,就必须对它进行release或者autoreleasealloc 引用计数0 ->1retain 引用计数 立即 +1copy release 引用计数 立即-1autorelease 配合 @autoreleasepool{ }使用retainCount 用来取当前对象的引

2014-08-14 23:14:39 508

原创 有一个数组,数组中有13个元素,先将该数组进行分组,每3个元素为一组,分为若干组,最后用一个数组统一管理这些分组.(要动态创建数组).

NSMutableArray *arr = [[NSMutableArray alloc] init]; for (int i = 0; i < 13; i++) { [arr addObject:[NSString stringWithFormat:@"shenzhou%dhao", i+ 1]]; } NSLog(@"%

2014-08-14 08:54:22 819

原创 总结(最强王者组 王振波 胡鹏飞 孙晓萌 张西辉)

int (^block)(int x, int y) = ^(int x, int y) { return x + y; };int (^)(int x, int y) block变量的类型/block --block变量的名字^(int x, int y) { return x + y;

2014-08-09 20:57:45 1506

原创 从控制台输入用户名和密码, 然后 判断输入的用户名是否是@“Frank”, 密码 是否是 @“lanou”, 如果用户名和密码都正确,则输出登录成功, 否则输出登录失败. 提示:

char str5[20] = {};//定义用户名 char str6[20] = {};//密码 NSLog(@"请输入用户名:"); scanf("%s",str5); NSString *Str5 = [[NSString alloc] initWithUTF8String:str5]; NSLog(@"请输

2014-08-08 08:39:01 8611

原创 2. 给定一个图片文件名,判断字符串中是否以“png”结尾,如果是就替换成“jpg”,如果不是,就拼接”.jpg”。

NSString *str4 = [[NSString alloc] initWithFormat:@"http://www.baidu.com"]; BOOL isSuffix = [str4 hasSuffix:@"png"]; NSLog(@"isSuffix = %d", isSuffix); if (isSuffix == 1) {

2014-08-07 23:13:14 1821

原创 截取字符串“20|http://www.baidu.com”中 “|” 前面和后面的字符串,并输出。将“文艺青年”改成“213青年”。

NSString *str =[NSString stringWithFormat:@"20|http://www.baidu.com"]; NSString *str1 = [str substringFromIndex:3]; NSLog(@"str1 = %@",str1);//输出为http://www.baidu.com NSString

2014-08-07 23:09:52 1940

原创 实现简单通讯录操作。
1、定义联系人类AddressPerson。实例变量:姓名、性别、电话号码、住址、分组名称。方法:自定义初始化方法(姓名、电话号码)、显示联系人信息
2、在main.m中定义可变

(在 .h文件中声明)#import @interface AddressPerson : NSObject{ NSString *_name;//姓名 NSString *_gender;//性别 NSString *_number;//电话号码 NSString *_address;//地址 NSString *_croupName;//分组名

2014-08-07 23:00:28 5674 2

原创 NString 与 NSMutableString 最强王者组 组员:张西辉 孙晓萌 胡鹏飞 王振波

1.创建对象两种方式:(1)便利构造器(+号方法) (2) alloc + 初始化方法 (3)根据字符串初始化OC字 符串对象(已弃用) 2.求字符串长度3.获取字符串中的某个字符注: 给定的字符下标超出范围,即下标越界时,程序会crashreason : 问题产生的原因.NSCFString == NSString ,又是一个-

2014-08-06 23:09:24 1221

原创 编写程序实现以下功能: 随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条

int a[20] = {0};//定义一个数组 for (int i = 0; i < 20; i++) { a[i] = arc4random() % (9999 - 1000 + 1) + 1000; }//为数组a随机赋值 for (int i = 0; i < 20 - 1; i++) { for (int j = 0; j < 2

2014-08-01 08:43:34 12679

原创 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)

//1.bug1 : 如果最后一个单词后面直接跟\0.无法获取. //2.bug2 : 第一个单词前面出现空格,或者多个空格 //3.bug3 : 单词与单词之间出现多个空格. //1.如何存储文本? char str[] = " a41 a1421 b3511 b b c c c c dddddd jkt

2014-07-29 22:59:40 1651

原创 输入一个数组长度,动态创建数组,所有元素随机生成,输出元素中的最大值

int count = 0;//存储数组长度 int max = 0;//存储最大值 printf("输入一个数组长度:");//从控制台输入数组长度 scanf("%d", &count); int *p = malloc(count);//动态分配为数组开辟空间 for (int i = 0; i < count; i++) {//随机生成数组元素

2014-07-29 21:50:15 3514

原创 将字符串中的数字存储到动态内存中

char str[] = "dsdlk2d4g5fhg5h4f4h65456gfh4fg6451"; //先计算出字符串中数字的个数 int count = 0;//存储数字的个数 int i = 0; // int *p = str; while( str[i] != '\0') { if (str[i] >= '0' && str[i] <

2014-07-29 21:34:15 836

原创 定义两个整型指针,分别用malloc、calloc对其分配空间保存3个元素,malloc分配的空间用memset清零,随机对数组进行赋值随机范围1-3,赋值后用memcmp比较两个数组。如果相同打印G

int *p = malloc(sizeof(int) * 3); int *q =calloc(3, 4); int a = 0;//存储比较后的值 for (int i = 0; i < 3; i++) { *(p + i) = arc4random() % (3 - 1 + 1) +1; printf("%d ",*(p + i));

2014-07-29 20:30:50 1148

原创 有一字符串,包含数字与字母,编程去除数字。要求:1、要求在原字符串中操作 2、使用指针处理

char str[] = "124a1b325cdef36gh325ijklmnop324qr63s352t56uvw57x47yz235"; printf("%lu", strlen(str)); char *p = str; int i = 0; char temp[255] = {0}; while (*(p + i) != '\0') {

2014-07-28 23:03:27 1823

原创 输入10个整数,将其中最小的数与第一个数对换,把最大的数和最后一个数对换,写三个函数:1.输入10个数,2.进行处理.3输出10个数

int main(int argc, const char * argv[]){ //1、输入10个整数,将其中最小的数与第一个数对换,把最大的数和最后一个数对换,写三个函数:1.输入10个数,2.进行处理.3输出10个数 int a[10] = {0}; int *p =a; for (int i = 0; i < 10; i++) {

2014-07-28 22:58:07 2950

原创 输入一个字节内的数(0~255)和移动位数。输出移位结果(要求循环移位)提示:系统自带的移位都是非循环的

#import int main(int argc, const char * argv[]){        printf("输入一个字节内的数和移动位数:");    int a = 0, n = 0;    scanf("%d %d", &a, &n);    n = n % 8;    unsigned char left = 0;//存储左移之后的结果

2014-07-26 09:51:47 577

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除