Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

seuqram

juntar 2 variaveis de tipo carater

Mensagens Recomendadas

seuqram

pessoal eu não consigo juntar 2 variáveis de tipo carater exemplo:

char a='vari';

char b='avel';

eu queria juntar essas duas ficando numa variável que ficava com o valor: variavel(juntar a variavel a com a b)

é possível?

como?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
bubulindo


char a[] = {'v', 'a', 'r', 'i'};
char b[] = {'a','v','e','l'};
char c[10];

strcat(c, a);
strcat(c, b);

Podes procurar pela classe String que faz o mesmo de forma mais simples.


include <ai se te avio>

Mãe () {

}

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pmg


char a[] = {'v', 'a', 'r', 'i'};
char b[] = {'a','v','e','l'};
char c[10];

strcat(c, a);
strcat(c, b);

Podes procurar pela classe String que faz o mesmo de forma mais simples.

Eu não sei C++, mas não devias "terminar" os arrays a e b com '\0' e inicializar o array c (ou pelo menos atribuir '\0' ao primeiro elemento) antes de usares strcat()?

O teu código em C (com maneiras diferentes, mas equivalentes, de inicializar a e b) seria

char a[] = {'v', 'a', 'r', 'i', '\0'};
char b[] = "avel";
char c[10];

c[0] = '\0';
strcat(c, a);
strcat(c, b);


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
RiKoNnEcT

Eu não sei C++, mas não devias "terminar" os arrays a e b com '\0' e inicializar o array c (ou pelo menos atribuir '\0' ao primeiro elemento) antes de usares strcat()?

O teu código em C (com maneiras diferentes, mas equivalentes, de inicializar a e b) seria

char a[] = {'v', 'a', 'r', 'i', '\0'};
char b[] = "avel";
char c[10];

c[0] = '\0';
strcat(c, a);
strcat(c, b);

Exacto, da forma que o bubulindo fez o programa rebenta, basta meter os '\0' e já fica operacional

Outra forma bem mais simples de resolver o problema e que o bublindo tambem já referenciou é usar a biblioteca string

#include <string>
#include <iostream>
using namespace std;

void main()
{
      string a,b;
      a="vari";
      b="avel";

      a+=b;
      cout<<a<<endl;
}

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
RiKoNnEcT

string a,b;

que tipo de variavel é este?

e strcat?

e \0?

string a,b; -> string é a verdadeira String em c++, o array de caracteres que usaste, não passa de isso mesmo, um array de caracteres em que se usa o '\0' no final para indicar que é uma frase/string e não um simples conjunto de caracteres aleatórios.

strcat()-> uma funcao da biblioteca "string.h" que concactena(acho que é assim que se escreve :P ) duas frases, ou seja junta-as todas na mesma "string"/array de caracteres

\0-> como já tinha explicado acima é o "sinal" que indica que um array de caracteres deve ser interpretado como uma string

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.