一、概念
// OC 的字符串 是一个对象
// 正是因为 OC中的字符串是一个对象, 所以它就具备了很多功能
// 输出 OC的字符串使用 %@, %@ 就是专门输出对象类型的
二、代码
#import <Foundation/Foundation.h>
#import <string.h>
#pragma mark 类
@interface IPhone : NSObject
- (NSString *)loadMessage;
@end
@implementation IPhone
- (NSString *)loadMessage
{
// return "老婆我们家我做主";
// 只需要在C语言字符串前面加上@符号,系统就会自动将C语言字符串 转换为OC字符串
return @"老婆我们家我做主";
}
@end
#pragma mark main函数
int main(int argc, const char * argv[])
{
/*
// C语言中的字符串 不是对象
char *name1 = "lyh";
char name2[] = "lyh";
// OC 的字符串 是一个对象
// 正是因为 OC中的字符串是一个对象, 所以它就具备了很多功能
NSString *str = @"lyh";
IPhone *p = [IPhone new];
// 注意: 输出 C语言的字符串 使用 %s
// 输出 OC的字符串使用 %@, %@ 就是专门输出对象类型的
// NSLog(@"content = %s",[p loadMessage]);
NSLog(@"content = %@",[p loadMessage]);
*/
#pragma 1.如何创建OC的字符串
// NSString *str = @"lyh";
// printf("age = %i, height = %f\n",25,1.71);
NSString *str = [NSString stringWithFormat:@"age = %i,height = %f",25,1.71];
NSLog(@"str = %@",str);
#pragma 2.如何计算字符串长度
// 包含\0
// char name[] = "lyh"; // l y h \0
char name[] = "李"; // 李(占用3个字节) \0
// size_t size = sizeof(name);
// printf("size = %lu\n",size);
// 不包含\0
size_t length = strlen(name);
printf("length = %lu\n",length);
#warning NSString
// 不包含\0
// NSString *str1 = @"lyh";
NSString *str1 = @"李";
NSUInteger length1 = [str1 length];
NSLog(@"length1 = %lu",length1);
return 0;
}
网友评论