Pilantra Postado Abril 14, 2005 Denunciar Share Postado Abril 14, 2005 Dae genteTentei concatenar dois ponteiros char, mas não deu certo, tentei com o ponto final e com o sinal de adição!!! Qual é a forma certa!? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kandrade Postado Abril 14, 2005 Denunciar Share Postado Abril 14, 2005 o jeito certo é usar strcat....strcat(p1,p2); Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Pilantra Postado Abril 15, 2005 Autor Denunciar Share Postado Abril 15, 2005 Boa ideia mas não deu certo, ele da falha de segmentacao quando eu aperto o botao, e minha aplicacao fecha!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kandrade Postado Abril 15, 2005 Denunciar Share Postado Abril 15, 2005 mas o que você quer concatenar?dois ponteiros char ou dois ponteiros de estrutura?posta o código ai....ou me passa por email....slack.kleber@gmail.comte+ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Pilantra Postado Abril 15, 2005 Autor Denunciar Share Postado Abril 15, 2005 Ah num é coisa muito séria não, eu só estava testando algumas funcionalidades do GTK, e eu queria fazer o seguinte:char *variavel1, *variavel2;variavel2 = gtk_entry_get_text(GTK_ENTRY(texto));variavel1 = "Você digitou: " + variavel2;É isso, uma simples concatenação de Strings, a variavel2, recebe o valor que foi digitado no campo de texto do gtk, e a variavel1 recebe ele mais aquela frase, e depois é jogado no label!!!Só que o sinal de + não funciona e nem o sinal de . e essa função que você me passou da Falha de Segmentação!!!!Eu estou fazendo testes com essas coisas bem simples, porque dependendo da aplicação eu vou trabalhar muito com strings, e eu sempre mexo muito com Strings no Delphi e no Java!!!!Ah, um detalhe importante, o GTK não aceita tipo String, somente char, esse é o problema, talvez o retorno da função strcat() retorna em String e da erro pois o receptor é char!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 16, 2005 Denunciar Share Postado Abril 16, 2005 Ah num é coisa muito séria não, eu só estava testando algumas funcionalidades do GTK, e eu queria fazer o seguinte:char *variavel1, *variavel2;variavel2 = gtk_entry_get_text(GTK_ENTRY(texto));variavel1 = "Você digitou: " + variavel2;É isso, uma simples concatenação de Strings, a variavel2, recebe o valor que foi digitado no campo de texto do gtk, e a variavel1 recebe ele mais aquela frase, e depois é jogado no label!!!Só que o sinal de + não funciona e nem o sinal de . e essa função que você me passou da Falha de Segmentação!!!!Eu estou fazendo testes com essas coisas bem simples, porque dependendo da aplicação eu vou trabalhar muito com strings, e eu sempre mexo muito com Strings no Delphi e no Java!!!!Ah, um detalhe importante, o GTK não aceita tipo String, somente char, esse é o problema, talvez o retorno da função strcat() retorna em String e da erro pois o receptor é char!!! Na verdade, strcat() não retorna nada. O primeiro parâmetro dela é passado por referência, portanto ele é alterado. Daí decorre a necessidade de que o vetor tenha um tamanho suficiente para conter seus próprios dados e mais os dados que serão concatenados. Não testei aqui, mas tente o seguinte: char *variavel1, *variavel2; variavel2 = gtk_entry_get_text(GTK_ENTRY(texto)); variavel1 = "Você digitou: "; int tamanho = strlen(variavel1) + strlen(variavel2) + 1; char *s = new char[tamanho]; strcat(s, variavel1); strcat(s, variavel2); cout << s << endl;Veja se em "s" fica realmente o valor concatenado das duas outras strings.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Pilantra
Dae gente
Tentei concatenar dois ponteiros char, mas não deu certo, tentei com o ponto final e com o sinal de adição!!! Qual é a forma certa!?
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.