Ir para conteúdo
Fórum Script Brasil
  • 0

retornando array de char


marcoa

Pergunta

estou usando o C++Builder6 para fazer o programa,

criei esta função para inverter variaveis do tipo String.

String inverter(String txt)
{
        String invertida = "", temp = "";
        for(int i = txt.Length(); i > 0; i--)
        {
         temp = temp + txt.SubString(i,1);
        }
        invertida = temp;
        return invertida;
}
queria faze-la sem ultilizar a variavel String e sim char[], tentei algo como:
#define MAX 5
char inverter[MAX](char txt[MAX])
{
        char invertida[MAX] = "", temp[MAX] = "";
        int n = 0;
        for(int i = MAX; i > 0; i--)
        {
         temp[n] = txt[i-1];
         n++;
        }

        invertida = temp;
        return invertida;
}

mas não funciona, ajudem...

Editado por marcoa
Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

acabei nem criando uma função, coloquei logo no main (da na mesma), muito obrigado

OBS: ultilizei scanf para facilitar a verificação da entrade de no maximo 10 digitos

#include <stdio.h>
#include <iostream.h>
#define MAX 10

int main()
{
        char entrada[MAX] = "" , temp[MAX] = "" , saida[MAX] = "";

        cout << "Digite um texto de ate 10 caracteres:" << endl;
        scanf("%10s",&entrada);

        //transforma '' em ' ' (espaço)
        for(int y = 0; y < MAX; y++)
        {
         if(entrada[y] == '\0')
         {
          entrada[y] = ' ';
         }
        }

        int n = 0;
        for(int i = MAX; i > 0; i--)
        {
                 temp[n] = entrada[i-1];
                 n++;
        }

        for(int y = 0; y < MAX; y++)
        {
         saida[y] = temp[y];
        }

        //RETORNAR RESULTADOS
        system("CLS");
        cout << "TEXTO NORMAL   : \"" << entrada << "\"" << endl;
        cout << "TEXTO INVERTIDO: \"" << saida << "\"" << endl;
        system("PAUSE");
        return 0;
}

OBS2: NA LINHA 15, por algum motivo o forum não deixou escrever:

if(entrada[y] == '\0')

o proprio forum substitui '\0' por ''

Editado por marcoa
Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...