ios系统版本宏-ios宏软件

本文目录一览:

宏定义怎样得到ios的系统版本

获得IOS系统版本号

[[[UIDevice currentDevice] systemVersion] floatValue]

获得硬件名称

+ (NSString*)getMachine{

size_t size;

sysctlbyname("hw.machine", NULL, size, NULL, 0);

char *name = malloc(size);

sysctlbyname("hw.machine", name, size, NULL, 0);

NSString *machine = [NSString stringWithCString:name encoding:NSUTF8StringEncoding];

free(name);

if( [machine isEqualToString:@"i386"] || [machine isEqualToString:@"x86_64"] ) machine = @"ios_Simulator";

else if( [machine isEqualToString:@"iPhone1,1"] ) machine = @"iPhone_1G";

else if( [machine isEqualToString:@"iPhone1,2"] ) machine = @"iPhone_3G";

else if( [machine isEqualToString:@"iPhone2,1"] ) machine = @"iPhone_3GS";

else if( [machine isEqualToString:@"iPhone3,1"] ) machine = @"iPhone_4";

else if( [machine isEqualToString:@"iPod1,1"] ) machine = @"iPod_Touch_1G";

else if( [machine isEqualToString:@"iPod2,1"] ) machine = @"iPod_Touch_2G";

else if( [machine isEqualToString:@"iPod3,1"] ) machine = @"iPod_Touch_3G";

else if( [machine isEqualToString:@"iPod4,1"] ) machine = @"iPod_Touch_4G";

else if( [machine isEqualToString:@"iPad1,1"] ) machine = @"iPad_1";

else if( [machine isEqualToString:@"iPad2,1"] ) machine = @"iPad_2";

return machine;

}

ios 宏定义 优缺点 及 何时使用

有人会问宏是干什么的呢,说简单一点,就是一个键完成一系列操作,比如说,在KOF中,你只要把相应的超必杀设定为宏,你按一个键就可以发出极其复杂的超必杀.宏定义的具体符号表示如下:u=上 d=下 f=前 b=后 df=前下 db=后下 ub=后斜跳 uf=前斜跳 1=按键1 2=按键2 3=按键3 4=按键4 5=按键5 6=按键6 s=开始 ,=下一帧 有停顿的作用 +=表示在宏定义的招式发出的同时接受其它操作指令的输入,经观察发现,u,d,f,b就是上,下,前,后的英文单词的第一个字母。看完了具体符号表示方法后,比如KOF99nd中人物的例子.先打开INI目录中的KOF99nd.ini,如果你没有这个文件,运行一个kof99nd就会自动生成该文件的 在记事本中查找 [Macros],会跳转到该行,在这里就可以写宏命令了那个d,df,f,df,d,db,b3就是笔者刚才定义的宏,前面是一个1,就证明按数字1键就可以发出K'DASH的连锁驱动的超必杀了,那个1就可以改变的,任何键都可以,只要不跟上面的控制设定冲突就行了再给几个宏给大家参考,对照一下上面的"宏定义的具体符号表示方法"就懂了.K'DASH连锁驱动:↓↘→↘↓↙←+C宏命令: d,df,f,df,d,db,b3你把Macro1A=12+改成Macro1A=d,df,f,df,d,db,b3然后保存(注意:下面的Macro1B...J都是可以改的,一共支持十条宏命令)运行kof99nd,看一下在“游戏”菜单中的"重新定义键位设定"中的"重新定义玩家1的键位设定 ..."

ios开发 swift 宏一般定义在哪个文件里

系统宏汇集

__FILE__

当前文件所在目录

__DATE__

“替代文字”是一个含有编译日期的字符串字面值,日期格式为“mm dd yyyy”(例如:“Mar 19 2006”)。如果日期小于10日,就在日的前面放一个空格符。NSLog(@"_DATE_=%s",__DATE__);

__FUNCTION__

当前函数名称

__LINE__

当前语句在源文件中的行数

__TIME__

此字符串字面值包含编译时间,格式为“hh:mm:ss”(范例:“08:00:59”)。

__STDC__

整数常量1,表示此编译器遵循ISOC标准。

__STDC_VERSION__

如何实现复合C89整部1,则这个宏的值为19940SL;如果实现符合C99,则这个宏的值为199901L;否则数值是未定义

__STDC_EOBTED__

(C99)实现为宿主实现时为1,实现为独立实现为0

__STDC_IEC_559__

(C99)浮点数实现复合IBC 60559标准时定义为1,否者数值是未定义

__STDC_IEC_559_COMPLEX__

(C99)复数运算实现复合IBC 60559标准时定义为1,否者数值是未定义

__STDC_ISO_10646__

(C99)定义为长整型常量,yyyymmL表示wchar_t值复合ISO 10646标准及其指定年月的修订补充,否则数值未定义

1、release时,屏蔽log

C代码

#if defined (DEBUG) DEBUG == 1

#else

#define NSLog(...) {};

#endif

2、在主线程或在后台执行block

C代码

#define BACK(block) dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), block)

#define MAIN(block) dispatch_async(dispatch_get_main_queue(),block)

3、设备相关

C代码

#define isRetina ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) : NO)

#define iPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) : NO)

#define isPad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

#define CurrentSystemVersion ([[UIDevice currentDevice] systemVersion])

#define CurrentLanguage ([[NSLocale preferredLanguages] objectAtIndex:0])

4、区分模拟器和真机

C代码

#if TARGET_OS_IPHONE

//iPhone Device

#endif

#if TARGET_IPHONE_SIMULATOR

//iPhone Simulator

#endif

5、根据是否使用ARC做不同操作

C代码

#if __has_feature(objc_arc)

//compiling with ARC

#else

// compiling without ARC

#endif

ios有自带的一键宏吗

有。

标准中一些预定义的宏

C标准中指定了一些预定义的宏,对于编程经常会用到。下面这个表中就是一些常常用到的预定义宏。

意义

__DATE__

进行预处理的日期(“Mmm dd yyyy”形式的字符串文字)

__FILE__

代表当前源代码文件名的字符串文字

__LINE__

代表当前源代码中的行号的整数常量

__TIME__

源文件编译时间,格式微“hh:mm:ss”

__func__

当前所在函数名

iOS如何判断是iOS11系统的宏定义

系统宏汇集

__FILE__

当前文件所在目录

__DATE__

“替代文字”是一个含有编译日期的字符串字面值,日期格式为“mm dd yyyy”(例如:“Mar 19 2006”)。如果日期小于10日,就在日的前面放一个空格符。NSLog(@"_DATE_=%s",__DATE__);

__FUNCTION__

当前函数名称

__LINE__

当前语句在源文件中的行数

__TIME__

此字符串字面值包含编译时间,格式为“hh:mm:ss”(范例:“08:00:59”)。

__STDC__

整数常量1,表示此编译器遵循ISOC标准。

__STDC_VERSION__

如何实现复合C89整部1,则这个宏的值为19940SL;如果实现符合C99,则这个宏的值为199901L;否则数值是未定义

__STDC_EOBTED__

(C99)实现为宿主实现时为1,实现为独立实现为0

__STDC_IEC_559__

(C99)浮点数实现复合IBC 60559标准时定义为1,否者数值是未定义

__STDC_IEC_559_COMPLEX__

(C99)复数运算实现复合IBC 60559标准时定义为1,否者数值是未定义

__STDC_ISO_10646__

(C99)定义为长整型常量,yyyymmL表示wchar_t值复合ISO 10646标准及其指定年月的修订补充,否则数值未定义

iOS 宏定义方法

系统宏汇集

__FILE__

当前文件所在目录

__DATE__

“替代文字”是一个含有编译日期的字符串字面值,日期格式为“mm dd yyyy”(例如:“Mar 19 2006”)。如果日期小于10日,就在日的前面放一个空格符。NSLog(@"_DATE_=%s",__DATE__);

__FUNCTION__

当前函数名称

__LINE__

当前语句在源文件中的行数

__TIME__

此字符串字面值包含编译时间,格式为“hh:mm:ss”(范例:“08:00:59”)。

__STDC__

整数常量1,表示此编译器遵循ISOC标准。

__STDC_VERSION__

如何实现复合C89整部1,则这个宏的值为19940SL;如果实现符合C99,则这个宏的值为199901L;否则数值是未定义

__STDC_EOBTED__

(C99)实现为宿主实现时为1,实现为独立实现为0

__STDC_IEC_559__

(C99)浮点数实现复合IBC 60559标准时定义为1,否者数值是未定义

__STDC_IEC_559_COMPLEX__

(C99)复数运算实现复合IBC 60559标准时定义为1,否者数值是未定义

__STDC_ISO_10646__

(C99)定义为长整型常量,yyyymmL表示wchar_t值复合ISO 10646标准及其指定年月的修订补充,否则数值未定义


原文链接:https://527256.com/27604.html

相关文章

访客
访客
发布于 2022-08-20 01:12:18  回复
整数常量1,表示此编译器遵循ISOC标准。__STDC_VERSION__ 如何实现复合C89整部1,则这个宏的值为19940SL;如果实现符合C99,则这个宏的值为199901L;否则数值是未定义__STDC_EOBTED__

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

返回顶部