Diferencia entre revisiones de «itoa()»

De ArduWiki
Saltar a: navegación, buscar
(Sintaxis)
(Ejemplo)
 
(No se muestran 4 ediciones intermedias del mismo usuario)
Línea 8: Línea 8:
  
 
== Parámetros ==
 
== Parámetros ==
;valor:Valor a convertir en una cadena.
+
;valor:Valor [[int]] a convertir en una cadena caracteres (matriz).
;str:Matriz en la memoria donde almacenar la cadena resultante terminada en nulo.
+
;matriz:Nombre de la matriz en memoria donde almacenar la cadena resultante terminada en nulo.
;base:Base numérica usada para representar el valor como una cadena, entre 2 y 36 , donde 10 significa base decimal, 16 hexadecimal, 8 octal y 2 binarios.
+
;base:Base numérica usada para representar el valor como una cadena. Entre 2 y 36, donde 10 significa base decimal, 16 hexadecimal, 8 octal y 2 binarios.
  
 
== Retorna ==
 
== Retorna ==
Un puntero a la cadena terminada en nulo resultante, igual que el parámetro str.
+
Un puntero a la cadena terminada en nulo resultante, igual que el parámetro '''matriz'''.
 +
 
 +
== Comentario ==
 +
* Si la base es 10 y el valor es negativo, la cadena resultante está precedida por un signo menos (-). Con cualquier otra base, el valor siempre se considera sin signo.
  
 
== Advertencia ==
 
== Advertencia ==
* Si la base es 10 y el valor es negativo, la cadena resultante está precedida por un signo menos (-). Con cualquier otra base, el valor siempre se considera sin signo.  
+
* Debe asignarse suficiente espacio a la matriz para contener la cadena devuelta. Puede devolver hasta 17 bytes.
  
== Ejemplo ==
+
== Ejemplo 1 ==
 
<syntaxhighlight lang="c++">
 
<syntaxhighlight lang="c++">
 
void setup(){
 
void setup(){
Línea 26: Línea 29:
 
   itoa(n, texto, 10);
 
   itoa(n, texto, 10);
 
   for (byte i=0; i<5; i++){
 
   for (byte i=0; i<5; i++){
 +
      Serial.println(texto[i]);
 +
  }
 +
}
 +
void loop(){
 +
  //Nada.
 +
}
 +
</syntaxhighlight>
 +
 +
== Ejemplo 2 ==
 +
<syntaxhighlight lang="c++">
 +
void setup(){
 +
  Serial.begin(9600);
 +
  int n = 12345;
 +
  char texto[16];
 +
  itoa(n, texto, 2);
 +
  for (byte i=0; i<16; i++){
 
       Serial.println(texto[i]);  
 
       Serial.println(texto[i]);  
 
   }
 
   }
Línea 38: Línea 57:
  
 
== Referencia ==
 
== Referencia ==
 +
* [http://vitaly_filatov.tripod.com/ng/tc/tc_000.168.html itoa()] - Tripod
  
 
[[Category:Funciones conversion]]
 
[[Category:Funciones conversion]]

Revisión actual del 12:49 14 oct 2019

Descripción

Convierte un valor int en una cadena terminada en nulo usando la base especificada y almacena el resultado en la matriz dada por el parámetro str.

Sintaxis

itoa(valor, matriz, base);

Parámetros

valor
Valor int a convertir en una cadena caracteres (matriz).
matriz
Nombre de la matriz en memoria donde almacenar la cadena resultante terminada en nulo.
base
Base numérica usada para representar el valor como una cadena. Entre 2 y 36, donde 10 significa base decimal, 16 hexadecimal, 8 octal y 2 binarios.

Retorna

Un puntero a la cadena terminada en nulo resultante, igual que el parámetro matriz.

Comentario

  • Si la base es 10 y el valor es negativo, la cadena resultante está precedida por un signo menos (-). Con cualquier otra base, el valor siempre se considera sin signo.

Advertencia

  • Debe asignarse suficiente espacio a la matriz para contener la cadena devuelta. Puede devolver hasta 17 bytes.

Ejemplo 1

void setup(){
   Serial.begin(9600);
   int n = 12345;
   char texto[5];
   itoa(n, texto, 10);
   for (byte i=0; i<5; i++){
      Serial.println(texto[i]); 
   }
}
void loop(){
   //Nada.
}

Ejemplo 2

void setup(){
   Serial.begin(9600);
   int n = 12345;
   char texto[16];
   itoa(n, texto, 2);
   for (byte i=0; i<16; i++){
      Serial.println(texto[i]); 
   }
}
void loop(){
   //Nada.
}

Vea también


Referencia