[BS-15] Values of type 'NSInteger' should not be used as format arguments

Values of type ‘NSInteger‘ should not be used as format arguments

苹果app支持arm64以后会有一个问题:NSInteger变成64位了,和原来的int (%d)不匹配,使用[NSString stringWithFormat:@“%d", integerNum]; 会报如下警告:

Values of type ‘NSInteger‘ should not be used as format arguments; add an explicit cast to ‘long‘ instead

解决办法:

1、系统推荐方法   [NSString stringWithFormat:@“%ld", (long)integerNum];

2、强制转换int    [NSString stringWithFormat:@"%d", (int)integerNum];

3、转为数字对象  [NSString stringWithFormat:@“%@", @(integerNum)];

4、使用%zd占位符  [NSString stringWithFormat:@“%zd", integerNum];  (最简单的方法)

补充:

关于%zd格式化字符,只能运行在支持C99标准的编译器中,表示对应的数字是一个size_t类型,size_t是unsigned int 的增强版,表示与机器类型相关的unsigned类型,即:size-t在32位系统下是unsigned int(4个字节),在64位系统中为long unsigned int(8个字节)。

C语言转义字符

\\ 反斜杠

  \a 警告

  \b 退格

  \f 换页

  \n 换行

  \r 回车

  \t 跳格Tab

  \v 垂直跳格

空格在输入时不需要转义,直接敲空格

[BS-15] Values of type 'NSInteger' should not be used as format arguments

时间: 2024-10-17 17:17:17

[BS-15] Values of type 'NSInteger' should not be used as format arguments的相关文章

Values of type 'NSInteger' should not be used as format arguments; add an explicit cast to 'long' instead

苹果app支持arm64以后会有一个问题:NSInteger变成64位了,和原来的int (%d)不匹配,会报如下warning, Values of type 'NSInteger' should not be used as format arguments; add an explicit cast to 'long' instead 解决办法: 0, NSInteger number = 0; NSString *str = [NSString stringWithFormat:@"%d

values of type NSInteger should not be used as format arguments; 关于Xcode中烦人的32位与64位警告处理方法.

http://stackoverflow.com/questions/16075559/why-does-an-nsinteger-variable-have-to-be-casted-to-long-when-used-as-a-format-a 老老实实按Xcode的提示来处理 添加ld%, 添加(long) 这样才能保证在32位和64位上都不会出现警告. [NSString stringWithFormat:@"%ld", (long)_filterIndex]

The method setPositiveButton(int, DialogInterface.OnClickListener) in the type AlertDialog.Builder is not applicable for the arguments

The method setPositiveButton(int, DialogInterface.OnClickListener) in the type AlertDialog.Builder is not applicable for the arguments (String, new   View.OnClickListener(){}) .setNegativeButton("Don't Remind", new OnClickListener() .setNegative

iOS开发——项目实战总结&警告消除

警告消除 前言:现在你维护的项目有多少警告?看着几百条警告觉得心里烦么?你真的觉得警告又不是错误可以完全不管么? 如果你也被这些问题困惑,可以和我一起进行下面的操作.其实大部分的警告都是很好改的,把自己整个项目的警告撸一遍应该也就耗费半小时的时间,一次麻烦带来之后的清净这样不好么? 本文分为三个部分: 1.简单粗暴的消除警告. 2.详细科学的消除警告.(包括警告收录) 3.添加警告. 一.简单粗暴的消除警告 警告如果是自己项目中的还好直接改了,如果是第三方库,你改了之后,pod下作者更新一下又白

程序出现警告,解决方式

其实笔者本意是想把一些第一眼看不懂比较坑的警告收录进来,但是后来发现那基本没几个需要些写了,所以就采用了全收录的方法,遇到的就记录下. Unused variable 'replyURL' 1.没有使用 Cannot find protocol definition for 'TencentSessionDelegate' 2.这种明明都能运行还说我没有定义的警告,是因为你这个协议虽然定义了,但是你这个协议可能还遵守了XX协议,然后这个XX协议没有定义导致会报这种警告,所以遇到这种警告要往“父协

转:iOS警告收录及科学快速的消除方法

  前言:现在你维护的项目有多少警告?看着几百条警告觉得心里烦么?你真的觉得警告又不是错误可以完全不管么? 如果你也被这些问题困惑,可以和我一起进行下面的操作.其实大部分的警告都是很好改的,把自己整个项目的警告撸一遍应该也就耗费半小时的时间,一次麻烦带来之后的清净这样不好么? 本文分为三个部分:1.简单粗暴的消除警告. 2.详细科学的消除警告.(包括警告收录)  3.添加警告. 如果你不是在董铂然博客园看到本文,请点击查看原文. 一.简单粗暴的消除警告 警告如果是自己项目中的还好直接改了,如果是

IOS警告消除

本文分为三个部分:1.简单粗暴的消除警告. 2.详细科学的消除警告.(包括警告收录)  3.添加警告. 一.简单粗暴的消除警告 警告如果是自己项目中的还好直接改了,如果是第三方库,你改了之后,pod下作者更新一下又白改了,所以可以用这种简单粗暴的方法:直接让第三方库的警告不显示 就是在podfile文件里面加上一行指令 ? 1 inhibit_all_warnings! 如果某警告实在无法消除,但是又不想让他显示,可以加入预编译指令 比如我已经知道某行会报上面警告了,我就用这个宏把这几行包住,就

iOS 警告收录及科学快速的消除方法

http://www.cocoachina.com/ios/20150914/13287.html 作者:董铂然 授权本站转载. 前言:现在你维护的项目有多少警告?看着几百条警告觉得心里烦么?你真的觉得警告又不是错误可以完全不管么? 如果你也被这些问题困惑,可以和我一起进行下面的操作.其实大部分的警告都是很好改的,把自己整个项目的警告撸一遍应该也就耗费半小时的时间,一次麻烦带来之后的清净这样不好么? 本文分为三个部分:1.简单粗暴的消除警告. 2.详细科学的消除警告.(包括警告收录)  3.添加

iOS警告收录及科学快速的消除方法

  前言:现在你维护的项目有多少警告?看着几百条警告觉得心里烦么?你真的觉得警告又不是错误可以完全不管么? 如果你也被这些问题困惑,可以和我一起进行下面的操作.其实大部分的警告都是很好改的,把自己整个项目的警告撸一遍应该也就耗费半小时的时间,一次麻烦带来之后的清净这样不好么? 本文分为三个部分:1.简单粗暴的消除警告. 2.详细科学的消除警告.(包括警告收录)  3.添加警告. 如果你不是在董铂然博客园看到本文,请点击查看原文. 一.简单粗暴的消除警告 警告如果是自己项目中的还好直接改了,如果是