
//================================================================
// Nome Do Arquivo: string_reverse.c
// File Name: string_reverse.c
//
// Descrição: O programa inverte uma url e mostra o resultado.
//================================================================
// Protótipo da função
void string_reverse(char str[]);
// Libs
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// Função main
// Main Function
int main(int argc, char** argv)
{
char str[100];
// Lê a url
printf("Digite a url: ");
gets(str);
// Inverte a url
string_reverse(str);
// Imprime a url invertida
printf("A url resultante: %sn", str);
system("pause");
return 0;
}
// A função inverte uma string
void string_reverse(char str[]) {
int i, j, size;
char *aux;
// Calcula o tamanho da string original
size = strlen(str);
// Cria uma string auxiliar de mesmo tamanho
aux = (char *)malloc(sizeof(char) * size);
// Copia a string original para a auxiliar
strcpy(aux, str);
// Copia a string de forma ivertida
// para a string original caracter por caracter
for(i = (size-1), j = 0; i >= 0; i--, j++) {
str[j] = aux[i];
}
// Marca o fim da string
str[j] = '\0';
}
Relacionado