ios - ¿Cómo convierto el valor de NSUInteger al valor int en objectC?
objective-c (4)
Esta pregunta ya tiene una respuesta aquí:
- ¿Cómo convertir un NSInteger a un int? 4 respuestas
¿Cómo convierto el valor de NSUInteger
valor int
en NSUInteger
?
y también cómo imprimir el valor de NSLog
en NSLog
, probé %@,%d,%lu
estos no funcionan y se NSLog
error de acceso incorrecto.
Gracias
Es tan simple como esto,
NSUInteger uintV = 890;
int intVal = (int) uintV;
NSLog(@"the value is : %lu", (unsigned long)intVal);
esto imprimirá algo como esto,
El valor es: 890
Hola todo está funcionando para mí ...
Intenté esto ..
NSUInteger inbox_count=9;
NSLog(@"inbox_count=%d",(int)inbox_count);
//output
inbox_count=9
Gracias a todos ..
Reparto explícito a int
NSUInteger foo = 23;
int bar = (int)foo;
A pesar de que
NSLog(@"%lu",foo);
funcionará bien en las versiones actuales de OSX. No es seguro, ya que NSUInteger se tipifica como int sin signo en otras compilaciones. Tales como iOS. La respuesta estricta es lanzarlo primero:
NSLog(@"%lu",(unsigned long)foo);
NSUInteger intVal = 10;
int iInt1 = (int)intVal;
NSLog(@"value : %lu %d", (unsigned long)intVal, iInt1);
para mas referencia, mira here