Diferencia entre revisiones de «Usuario:Cstaff/Zona de pruebas»

(Página creada con '==== En C ==== En C esta operación se realiza utilizando las funciones de la librería stdio.h '''malloc''', '''realloc''' t '''free'''.')
 
Línea 1: Línea 1:
 +
=Esta es una zona de pruebas=
 +
 
==== En C ====
 
==== En C ====
En [[C]] esta operación se realiza utilizando las funciones de la librería stdio.h '''malloc''', '''realloc''' t '''free'''.
+
En [[C]] esta operación se realiza utilizando las funciones de la librería stdio.h '''malloc''', '''realloc''' y '''free'''.
 +
 
 +
Ejemplo:
 +
 
 +
<div style="background-color: #e9e9e9; border:solid 1px #bcbcbc">
 +
<syntaxhighlight lang="cpp">
 +
 
 +
//Clona una cadena de caracteres y retorna
 +
//un puntero a la nueva cadena.
 +
#include <string.h>
 +
#include <stdio.h>
 +
 
 +
char *strclone(char *src){
 +
  char *mem_dinamica;                        //Puntero al espacio a reservar.
 +
  size_t str_len;                            //Tamaño de la cadena que se quiere clonar.
 +
 
 +
  str_len = strlen(src);                    //Determinamos el tamaño de la cadena.
 +
  mem_dinamica = (char*)malloc(str_len+1);  //Reservamos el espacio + caracter '\0'.
 +
  if( mem_dinamica != NULL){                //Comprobamos que se reservara el espacio.
 +
      strcpy(mem_dinamica, src);              //Copiamos la cadena.
 +
  }
 +
  return mem_dinamica;                      //Retornamos el puntero a la nueva cadena.
 +
}
 +
 
 +
 
 +
int main(){
 +
 
 +
  return 0;
 +
}
 +
</div>
 +
</syntaxhighlight>

Revisión del 11:44 17 dic 2013

Esta es una zona de pruebas

En C

En C esta operación se realiza utilizando las funciones de la librería stdio.h malloc, realloc y free.

Ejemplo:

//Clona una cadena de caracteres y retorna 
//un puntero a la nueva cadena.
#include <string.h>
#include <stdio.h>

char *strclone(char *src){
   char *mem_dinamica;                        //Puntero al espacio a reservar.
   size_t str_len;                            //Tamaño de la cadena que se quiere clonar.

   str_len = strlen(src);                     //Determinamos el tamaño de la cadena.
   mem_dinamica = (char*)malloc(str_len+1);   //Reservamos el espacio + caracter '\0'.
   if( mem_dinamica != NULL){                 //Comprobamos que se reservara el espacio.
      strcpy(mem_dinamica, src);              //Copiamos la cadena.
   }
   return mem_dinamica;                       //Retornamos el puntero a la nueva cadena.
}


int main(){
   
   return 0;
}
</div>