黑马程序员 OC语法补充

——- android培训java培训ios培训期待与您交流!

一、NSString用法

1.字符串的声明

在C语言中,声明字符串的方式有:
1.char * str=“string”;
2.char str[]=”string”;
OC中使用的是一个NSString类,NSString包含了多种声明字符串的方式。

1.1 创建常量字符串
NSString *astring = @"This is a String!";
1.2stringWithFormat

代码如下:

NSString *str1=@"string";
int a=12;
// 传递了两个参数,参数1是一个字符串,参数2是一个整型a
NSString *str=[NSString stringWithFormat:@"字符串参数1:%@,参数2:%d",str1,a];
1.3length方法

length方法 返回字符串的长度,即字符串包含的字符个数。
代码如下:

NSString * str=@"哈哈123";
int len=[str length];//实际返回值是unsigned long类型
//len=5
1.4 截取字符串

substringToIndex
从字符串的开头一直截取到指定的位置,但不包括该位置的字符
代码如下:

NSString *string1 = @"This is a string";
NSString *string2 = [string1 substringToIndex:3];
NSLog(@"string2:%@",string2);

substringFromIndex
以指定位置开始(包括指定位置的字符),并包括之后的全部字符

NSString *string1 = @"This is a string";
NSString *string2 = [string1 substringFromIndex:3];
NSLog(@"string2:%@",string2);

二、Objective-C代码的文件扩展名

由于在Objective-C中可以编写多种形式的源文件,因此可以通过不同的文件扩展名来区分,表2-1所示为文件扩展名说明:

文件扩展名说明备注
.cc语言程序文件
.h头文件
.mObjective-C 源程序文件代码包含有Objective-C和C的语句
.mmObjective-C++源程序文件代码包含有Objective-C和C++的语句
.o编译之后的文件

三OC中math.h数学公式

3.1 三角函数

double sin (double); 正弦
double cos (double);余弦
double tan (double);正切

3.2 反三角函数

double asin (double); 结果介于[-PI/2, PI/2]
double acos (double); 结果介于[0, PI]
double atan (double); 反正切(主值), 结果介于[-PI/2, PI/2]
double atan2 (double, double); 反正切(整圆值), 结果介于[-PI, PI]

3.3 双曲三角函数

double sinh (double);
double cosh (double);
double tanh (double);

3.4 指数与对数

double exp (double);求取自然数e的幂
double sqrt (double);开平方
double log (double); 以e为底的对数
double log10 (double);以10为底的对数
double pow(double x, double y);计算以x为底数的y次幂
float powf(float x, float y); 功能与pow一致,只是输入与输出皆为浮点数

3.5 取整

double ceil (double); 取上整
double floor (double); 取下整

3.6 绝对值

double fabs (double);求绝对值
double cabs(struct complex znum) ;求复数的绝对值

3.7 标准化浮点数

double frexp (double f, int p); 标准化浮点数, f = x 2^p, 已知f求x, p ( x介于[0.5, 1] )
double ldexp (double x, int p); 与frexp相反, 已知x, p求f

3.8 取整与取余

double modf (double, double*); 将参数的整数部分通过指针回传, 返回小数部分
double fmod (double, double); 返回两参数相除的余数

3.9 其他

double hypot(double x, double y);已知直角三角形两个直角边长度,求斜边长度
double ldexp(double x, int exponent);计算x*(2的exponent次幂)
double poly(double x, int degree, double coeffs [] );计算多项式
nt matherr(struct exception *e);数学错误计算处理程序

四、总结

知识是死的,人是活的,死记硬背的再多,不见得什么时候才能用到,活学活用,需要的时候即使自己不会,也要知道 在哪里可以获得资源。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值