1.main()
{
int a[5]={1,2,3,4,5};
int *ptr=(int *)(&a+1);
printf("%d,%d",*(a+1),*(ptr-1));
}
2.以下为Windows NT下的32位C++程序,请计算sizeof的值
void Func ( char str[100] )
{
sizeof( str ) = ?
}
void *p = malloc( 100 );
sizeof ( p ) = ?
3.还是考指针,不过我对cocoa的代码还是不太熟悉
大概是这样的
- NSString *getNSString(void)
{
NSString *output=@"This is a main test/n";
return output;
}
-main(void)
{
NSString *a=@"Main";
NSString *aString = [NSString stringWithString:@"%@",getNSString(a)];
NSLog(@"%@/n", aString);
}
4.用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题)
写一个"标准"宏MIN ,这个宏输入两个参数并返回较小的一个。
5.写一个委托的interface
6.写一个NSString类的实现
- (id)initWithCString:(const char *)nullTerminatedCString encoding:(NSStringEncoding)encoding;
-(void)dealloc;
7.obj-c有多重继承么?不是的话有什么替代方法?
8.obj-c有私有方法么?私有变量呢
9.关键字const有什么含意?
关键字volatile有什么含意?并给出三个不同的例子。
static 关键字的作用:
extern "C" 的作用
10.为什么标准头文件都有类似以下的结构?
#ifndef __INCvxWorksh
#define __INCvxWorksh
#ifdef __cplusplus
extern "C" {
#endif
/*...*/
#ifdef __cplusplus
}
#endif
#endif /* __INCvxWorksh */
11.#import跟#include的区别,@class呢?
12.MVC模式的理解
13.线程与进程的区别和联系? 线程是否具有相同的堆栈? dll是否有独立的堆栈?
14.列举几种进程的同步机制,并比较其优缺点。
进程之间通信的途径
进程死锁的原因
死锁的4个必要条件
死锁的处理
15.堆和栈的区别
16.什么是键-值,键路径是什么
17.c和obj-c如何混用
18.目标-动作机制
19.cocoa touch框架
20.objc的内存管理
21.自动释放池是什么,如何工作
22.类工厂方法是什么
23.单件实例是什么
24.动态绑定
25.obj-c的优缺点
26.sprintf,strcpy,memcpy使用上有什么要注意的地方
27. 用变量a给出下面的定义
a) 一个整型数(An integer)
b)一个指向整型数的指针( A pointer to an integer)
c)一个指向指针的的指针,它指向的指针是指向一个整型数( A pointer to a pointer to an intege)r
d)一个有10个整型数的数组( An array of 10 integers)
e) 一个有10个指针的数组,该指针是指向一个整型数的。(An array of 10 pointers to integers)
f) 一个指向有10个整型数数组的指针( A pointer to an array of 10 integers)
g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a function that takes an integer as an argument
and returns an integer)
h)一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数( An array of ten pointers to functions t
hat take an integer argument and return an integer )
28.cocoa有哪些设计模式?
29.socket编程中如何判断异步connect是否成功
30.[[[nil retain]retain]release]有什么问题
31.cocoa架构
解答见 http://www.notsoso.im/index.php/2010/08/iphone_interview/