月度归档:2016年06月

$(SRCROOT) 引发的一串联想

在使用Xcode进行开发时,当我们使用pch对全局引用进行设置时,此时我们需要设置文件的全路径,此时Xcode为我们提供一些可用的参数变量,可用供我们快捷的进行系统设置,例: $(SRCROOT)

$(环境变量)可用代替一串繁长的变量设置


一、$(SRCROOT)功能简介

$(SRCROOT)隶属于Xcode中的一个环境变量,使用此变量我们可以快捷获取当前项目所在的系统目录,
例:
项目名称为maomao365Demo.xcodeproj。
那么
$(SRCROOT)则表示 文件 “maomao365Demo.xcodeproj”所在的目录。
例 $(SRCROOT)/test/p-header.pch
表示”maomao365Demo.xcodeproj”目录下的test文件夹里面的p-header.pch文件


二、环境扩展简介

$(BUILT_PRODUCTS_DIR)
build成功后的,最终产品路径--可以在Build Settings参数的Per-configuration Build Products Path项里设置

$(TARGET_NAME)
目标工程名称

$(CURRENT_PROJECT_VERSION)
当前工程版本号

例: 采用$(SRCROOT) 设置pch文件路径

Xcode环境变量

Xcode环境变量

相关阅读:
Xcode pch相关阅读
https://developer.apple.com/library/mac/documentation/DeveloperTools/Reference/XcodeBuildSettingRef/1-Build_Setting_Reference/build_setting_ref.html

iOS 中NSString NSData char*数据类型之间转换


1. NSString转化为UNICODE String:

(NSString*)t = @”字符串”;
char t2[10];
memcpy(t2, [fname cStringUsingEncoding:NSUnicodeStringEncoding], 2*([t length]));
与strcpy相比,memcpy并不是遇到’\0’就结束,而是一定会拷贝完n个字节


2. NSString 转化为 char *

NSString @t= @”字符串”;
const char *t2 =[t UTF8String];


3.char * 转化为 NSString

char *t2 =”testInformation”;
NSString *t = [[NSString alloc]initWithCString:t2 encoding:NSUTF8StringEncoding];


4. char * 转化 NSData

方法一:
char * t = (char*)malloc(sizeof(byte)*16);
NSData *t2 = [NSData dataWithBytes:t length:strlen(t)];
方法二:
转换为NSString: – (id)initWithUTF8String:(const char *)bytes
然后用NSString的 – (NSData *)dataUsingEncoding:(NSStringEncoding)encoding


5. NSData 转化 char *

NSData t2 ;
char* t=[t2 bytes];


6. NSData 转化 NSString;

NSData* t;
NSString* t2= [NSString alloc] initWithData:t encoding:NSASCIIStringEncoding];


7. NSString 转化 NSData对象

NSData* t2 = [@”t2″ dataUsingEncoding:NSUTF8StringEncoding];

linux 修改ssh默认端口


1 检测ssh服务是否安装

[localhost ~]#ssh -v //小写的v 显示ssh的详细信息
[localhost ~]#ssh -V //大写的V 显示ssh的详细信息


2 检测ssh服务所对应的端口

[localhost ~]#ps -ef | grep ssh //检测ssh服务是否开启
如下图所示: 可以检测到已经运行的进程就代表ssh服务已经开启
查看ssh服务是否开启
[localhost ~]#/etc/init.d/sshd start //启动ssh 服务
[localhost ~]#/etc/init.d/sshd restart //重启ssh 服务


3 修改ssh服务所对应的端口

[localhost ~]#vi /etc/ssh/sshd_config
找到 port 22 ,将端口号修改为自己需要的端口号,关闭并保存sshd_config
[localhost ~]#/etc/init.d/sshd_config restart //重启ssh服务 测试ssh服务已经修改成功