Objective-C Language
Especificadores de formato
Buscar..
Introducción
Los Especificadores de formato se utilizan en Objective-c para implantar valores de objeto en una cadena.
Sintaxis
- %@ //Cuerda
- % d // Entero de 32 bits firmado
- % D // Entero de 32 bits firmado
- % u // Entero de 32 bits sin signo
- % U // Entero de 32 bits sin signo
- % x // Entero de 32 bits sin signo en formato hexadecimal en minúsculas
- % X // Entero de 32 bits sin signo en MAYÚSCULAS en formato hexadecimal
- % o // Entero de 32 bits sin signo en formato octal
- % O // Entero de 32 bits sin signo en formato octal
- % f // número de punto flotante de 64 bits
- % F // Número de punto flotante de 64 bits impreso en notación decimal
- % e // número de punto flotante de 64 bits en formato de notación científica en minúsculas
- % E // número de punto flotante de 64 bits en formato de notación científica MAYÚSCULAS
- % g // caso especial% e que usa% f cuando hay menos de 4 sig-figs disponibles, de lo contrario% e
- % G // caso especial% E que usa% f cuando hay menos de 4 sig-figs disponibles, de lo contrario% E
- % c // carácter sin signo de 8 bits
- Unidad de código UTF-16 de% C // 16 bits
- % s // cadena UTF8
- % S // variante de 16 bits de% s
- % p // Void Pointer en formato hexadecial en minúsculas con '0x' al principio
- % zx // caso especial% p que elimina el '0x' inicial (para uso con conversión sin tipo)
- % a // número de punto flotante de 64 bits en notación científica con '0x' inicial y un dígito hexadecimal antes del punto decimal utilizando una 'p' para indicar el exponente.
- % A // número de punto flotante de 64 bits en notación científica con '0x' inicial y un dígito hexadecimal antes del punto decimal utilizando una 'P' para indicar el exponente.
Observaciones
Debido a la naturaleza de los especificadores de formato, si desea incluir el símbolo de porcentaje (%) en su cadena, debe escapar usando un segundo símbolo de porcentaje.
Ejemplo:
int progress = 45;//percent
NSString *progressString = [NSString stringWithFormat:@"Progress: %i%%", (int)progress];
NSLog(progressString);//logs "Progress: 45%"
No existe ningún especificador de formato para el tipo BOOL.
Las soluciones de uso común incluyen:
BOOL myBool = YES;
NSString *boolState = [NSString stringWithFormat:@"BOOL state: %@", myBool?@"true":@"false"];
NSLog(boolState);//logs "true"
Que utiliza un operador ternario para lanzar una cadena equivalente.
BOOL myBool = YES;
NSString *boolState = [NSString stringWithFormat:@"BOOL state: %i", myBool];
NSLog(boolState);//logs "1" (binary)
Que utiliza un molde (int) para implantar un equivalente binario.
Ejemplo de entero -% i
int highScore = 57;
NSString *scoreBoard = [NSString stringWithFormat:@"HighScore: %i", (int)highScore];
NSLog(scoreBoard);//logs "HighScore: 57"
Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow