tipo numeros letras funcion español entero convertir cadena objective-c nsstring int

objective c - numeros - Cómo convertir de int a cadena en el objetivo c: código de ejemplo



funcion itoa en c (6)

La versión comentada es la forma más correcta de hacer esto.

Si usa el operador == en cadenas, está comparando las direcciones de las cadenas (donde están asignadas en la memoria) en lugar de los valores de las cadenas. Esto es muy útil ocasionalmente (indica que tiene exactamente el mismo objeto de cadena), pero el 99% del tiempo que desea comparar los valores, que le gusta así:

if([myT isEqualToString:@"10"] || [myT isEqualToString:@"11"] || [myT isEqualToString:@"12"])

Estoy tratando de convertir de un int a una cadena, pero estoy teniendo problemas. Seguí la ejecución a través del depurador y la cadena ''myT'' obtiene el valor de ''suma'', pero la instrucción ''if'' no funciona correctamente si ''suma'' es 10,11,12. ¿No debería estar usando un tipo int primitivo para almacenar el número? Además, ambos métodos que probé (vea el código comentado) no siguen la verdadera ruta de la declaración ''if''. ¡Gracias!

int x = [my1 intValue]; int y = [my2 intValue]; int sum = x+y; //myT = [NSString stringWithFormat:@"%d", sum]; myT = [[NSNumber numberWithInt:sum] stringValue]; if(myT==@"10" || myT==@"11" || myT==@"12") action = @"numGreaterThanNine";


Puedes usar literales, es más compacto.

NSString* myString = [@(17) stringValue];

(Cajas como NSNumber y usa su método stringValue )


Si solo necesitas una cadena int como sugeriste, he encontrado que la forma más fácil es hacer lo siguiente:

[NSString stringWithFormat:@"%d",numberYouAreTryingToConvert]


Simplemente convierta int en el uso de NSString :

int x=10; NSString *strX=[NSString stringWithFormat:@"%d",x];


== no debe usarse para comparar objetos en su if . Para el uso de isEqualToString: para compararlos.


int val1 = [textBox1.text integerValue]; int val2 = [textBox2.text integerValue]; int resultValue = val1 * val2; textBox3.text = [NSString stringWithFormat: @"%d", resultValue];