警告为: 'NSInteger' 유형의 값은 형식 인수로 사용하면 안 됩니다...
NSInteger의 유형이 32비트 플랫폼과 64비트 플랫폼에서 다르기 때문입니다. NSInteger는 32비트 플랫폼에서는 int 유형이고, 64비트 플랫폼에서는 long 유형을 선택하면, 64비트 플랫폼(iPhone4, iPhone4s, iPhone5)에서는 이 경고가 보고됩니다. 64비트 플랫폼(iPhone5s 이상)을 선택하면 이 경고가 보고되지 않습니다.
에는 %zd을 사용하고 NSUinteger에는 %zu을 사용하며 양의 정수가 보장되며 %zi
%zd
%zu
%zi
NSInteger의 유형이 32비트 플랫폼과 64비트 플랫폼에서 다르기 때문입니다. NSInteger는 32비트 플랫폼에서는 int 유형이고, 64비트 플랫폼에서는 long 유형을 선택하면, 64비트 플랫폼(iPhone4, iPhone4s, iPhone5)에서는 이 경고가 보고됩니다. 64비트 플랫폼(iPhone5s 이상)을 선택하면 이 경고가 보고되지 않습니다.
에는
을 사용할 수도 있습니다.%zd
을 사용하고 NSUinteger에는%zu
을 사용하며 양의 정수가 보장되며%zi