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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  me come el ultimo caracter de la primer cadena
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: me come el ultimo caracter de la primer cadena  (Leído 2,557 veces)
basuel

Desconectado Desconectado

Mensajes: 1


Ver Perfil
me come el ultimo caracter de la primer cadena
« en: 18 Octubre 2012, 19:31 pm »

alguien sabe xq me come el ultimo caracter de la primer cadena??


void strcat (char* cad1,char * cad2)
{
   int i=0;

   while(cad1!='\0')
   {
       i++;
   }
    int j=0;

    while(cad2[j]!='\0')
    {cad1=cad2[j];
        i++;
        j++;
    }

      cad1=cad2[j];
}


En línea

x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: me come el ultimo caracter de la primer cadena
« Respuesta #1 en: 18 Octubre 2012, 22:36 pm »

alguien sabe xq me come el ultimo caracter de la primer cadena??


void strcat (char* cad1,char * cad2)
{
   int i=0;

   while(cad1!='\0')
   {
       i++;
   }
    int j=0;

    while(cad2[j]!='\0')
    {cad1=cad2[j];
        i++;
        j++;
    }

      cad1=cad2[j];
}

strcat une las string cad2 a cad1 al buffer destino eliminando el caracter nulo de lo contrario no formarian una sola cadena pero si quereis que no borre el
caracter nulo entonces agregar esta linea justo despues del primer bucle while:

Código:
i++;






En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: me come el ultimo caracter de la primer cadena
« Respuesta #2 en: 19 Octubre 2012, 01:08 am »

Esa función realiza la operación (concatenación) de forma correcta. El error, si existe, debe encontrarse en otra parte del programa.

Se puede acortar utilizando punteros:
Código
  1. void strcat(char *p, char *q)
  2. {
  3.   while (*p != '\0')
  4.      p++;
  5.  
  6.   while ((*p++ = *q++) != '\0')
  7.      ;
  8. }

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
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Eliminar el último carácter de una variable
PHP
‭lipman 2 5,766 Último mensaje 13 Enero 2009, 23:15 pm
por ‭lipman
Borrar el ultimo caracter de un archivo con C#
.NET (C#, VB.NET, ASP)
nico56 3 12,313 Último mensaje 7 Febrero 2010, 04:36 am
por nico56
Como sacar el ultimo caracter de una variable
Programación Visual Basic
Edu 8 5,808 Último mensaje 5 Septiembre 2010, 19:29 pm
por Edu
[Solucionado] Separar una Cadena de Texto Caracter Por Caracter « 1 2 »
Programación Visual Basic
agus0 19 22,871 Último mensaje 5 Mayo 2011, 14:29 pm
por Psyke1
solo me muestra el primer caracter de mi cadena C#
.NET (C#, VB.NET, ASP)
SrTrp 4 3,074 Último mensaje 7 Noviembre 2023, 17:11 pm
por Danielㅤ
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines