Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera tenho ums string char str[2048] ="FLSKJDFLASDJ#FASDFASDFKASHDF#FKASHDKFASHDKFAHSKDF#----FASDFASDF#ASDLFKJASLKDFJASLDF#"
preciso percorrer esta string caracter por caracter até achar o "#" pega o conteudo antes e guardar em outra string
fazer isso até encontrar o fim da string..
o resultado nesta seria:
s1 = FLSKJDFLASDJ
s2 = FASDFASDFKASHDF
s3 = FKASHDKFASHDKFAHSKDF
s4 = ----FASDFASDF#ASDLFKJASLKDFJASLDF
e depois juntar tudo em uma outra string str2[2048]
com strcat tipo strcat(str2, s1), strcat(str2, s2) etc....
já tentei fazer de algumas formas aqui mais nenhum deu o resultado esperado, se alguem puder me ajudar com isto!
Agradeço desde já!
Ola.
Você pode estudar a função strtok.
Abraço.
Para separar voce pode usar a strtok como o amigo acima disse, exemplo:
pedaco = strtok (str,"#");
while (pedaco != NULL)
{
printf ("%s\n",pedaco);
pedaco = strtok (NULL, "#");
}
Como o objetivo é eliminar os '#'s voce pode fazer como o Terry disse, só não esqueça de zerar a variável j.
http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Olhando por outros fóruns na web achei desse jeito:
#include <stdio.h>
#include <string.h>
int main(){
char c[]="FLSKJDFLASDJ#FASDFASDFKASHDF#FKASHDKFASHDKFAHSKDF#----FASDFASDF#ASDLFKJASLKDFJASLDF#";
char d[2048];
int x, y;
for(x=0, y=0; x<strlen(c); x++, y++){
if(c[x]=='#'){
x++;
d[y]=c[x];
continue;
}
d[y]=c[x];
}
printf("%s\n", d);
system("pause");
return 0;
}Obrigado gente! consegui fazer a bagaça!!!
vlws d+ povão!
eh nois!
Foi nada!
http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
>
Obrigado gente! consegui fazer a bagaça!!!
vlws d+ povão!
eh nois!
Cara, acho que você deveria pesnsar o problema de outra forma ...
você na verdade quer obter uma string3 que contenha a string2 concatenada com
a string1 excluindo o caractere # da string 1. Não é isso?
Se não for ( entendi errado) volte a postar ok!
Uma possível solução segue abaixo:
CODE
void concatenaStrs (char str1, char str2, char *strResult){
{
* strResult[j] = str1**;*
strResult[j+1] = '\0';
j++;
}
}
}