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''' | + | 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>