elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  dudas con strncpy y strncat
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: dudas con strncpy y strncat  (Leído 1,435 veces)
Drewermerc

Desconectado Desconectado

Mensajes: 259



Ver Perfil WWW
dudas con strncpy y strncat
« en: 1 Mayo 2014, 19:43 pm »

bueno estuve revisando la wiki y me encontre con lo que no se debe de hacer en c y solo hay algo que no se a que se refere espero que me puedan decir a que se refiere.

el texto es este.
- Tanto strncpy o strncat no proveen un valor de retorno que pueda implicar un error o el exito de la cadena resultante, si no que devuelven un puntero al buffer destino. Por lo tanto requiere un esfuerzo extra por parte del programador.

codigo de prueba:

Código
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4.  
  5. int main ()
  6. {
  7. char cadena1[]= "hola", cadena2[10];
  8. strncpy(cadena2,cadena1,4);
  9. /*Si yo le digo que en la posicion 5 se finaliza el array todavía se da esto o ya no:
  10.  
  11. - strncpy tambien tiene un comportamiento que puede afectar el rendimiento del programa en caso que el buffer destino sea considerablemente mas grande que el buffer origen, ya que en este caso se realiza el zero-padding, es decir, llena el resto de la cadena con nulls.*/
  12.  
  13. cadena2[5] = '\0';
  14. printf("%s\n", cadena2);
  15.  
  16. return 0;
  17. }
  18.  

bueno espero me puedan ayudar saludos.


« Última modificación: 1 Mayo 2014, 19:45 pm por Drewermerc » En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: dudas con strncpy y strncat
« Respuesta #1 en: 1 Mayo 2014, 20:03 pm »

bueno estuve revisando la wiki y me encontre con lo que no se debe de hacer en c y solo hay algo que no se a que se refere espero que me puedan decir a que se refiere.

el texto es este.
- Tanto strncpy o strncat no proveen un valor de retorno que pueda implicar un error o el exito de la cadena resultante, si no que devuelven un puntero al buffer destino. Por lo tanto requiere un esfuerzo extra por parte del programador.
Me parece que esta bien explicado.

El valor de retorno de ambas funciones es su primer argumento y es inútil porque, por razones obvias, ya lo conoce quien llama a la función.

El problema con strncpy es:
A) Si copia el máximo de caracteres indicados no agrega el '\0', este se debe agregar de forma manual.
B) Si no copia el máximo de caracteres los restantes se colocan a '\0' sin importar su numero.

Por ello generalmente es mejor utilizar sprintf en lugar de strncpy.

Un saludo


En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Drewermerc

Desconectado Desconectado

Mensajes: 259



Ver Perfil WWW
Re: dudas con strncpy y strncat
« Respuesta #2 en: 1 Mayo 2014, 20:13 pm »

hola rir3760.
buen gracias me quedo ya claro todo.
crea que tiees razon e visto mucho tutoriales de algunos temas y la mayoria usa sprintf y sscanf. entonces es mas conveniente usar estar intrucion por que veo que luego tambien las  sustituyen por printf y scanf y usan ya sea sprintf , sscanf, fprintf, fscanf y fgets.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
Ingeniería Inversa
jamonyqueso 7 5,022 Último mensaje 7 Noviembre 2007, 04:45 am
por Ferсhu
[DUDAS] Todas las dudas sobre RadASD + MASM aqui « 1 2 3 »
ASM
AleX Inc. 23 21,209 Último mensaje 5 Julio 2010, 11:58 am
por Eternal Idol
problema con strncat
Programación C/C++
z_ane_666 1 1,294 Último mensaje 5 Noviembre 2012, 15:11 pm
por naderST
Windows 8, series de dudas y dudas en serie.
Wireless en Windows
rdzlcs 0 2,458 Último mensaje 8 Junio 2013, 17:39 pm
por rdzlcs
ayuda con strncpy y archivo.
Programación C/C++
montenegrooo 2 1,252 Último mensaje 5 Diciembre 2015, 19:57 pm
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines