1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Função Right em C

Discussão em 'Programação' iniciada por Baterista, 4 de Dezembro de 2006. (Respostas: 3; Visualizações: 825)

  1. Boas pessoal. Tudo bem? Espero que sim =)
    Preciso da vossa ajuda, e que tenho um TPC que e elaborar a função right() (pa quem nao sabe e uma funçao que recebe uma string e um valor inteiro e devolve os caracteres da string apartir do indice dado. Acho que esta explicação ainda compliquei mais xD).

    Tipo tive a esquematizer por portugues estruturado e pensei em:
    ->primeiramente verifivar o numero de caracteres que tem a string e guardar numa variavel
    ->em seguida decrementar essa variavel ate que fosse igual ao valor inteiro recebido pela função

    Queria saber se estou a ir no caminho certo =)

    Obrigado pela vossa colaboração ;):-D
     
  2. Cesaria

    Cesaria Power Member

    Viva, uma função que poderás usar será
    char *strncpy(char *dest, const char *src, size_t n);

    copias a string original (src) apontada com o indice dado para a string de destino (dest) e já tens uma string completa apartir desse indice...É isto que pretendes? Acho que não há a necessidade de manipulares mm a string...
     
  3. daminufe_tig

    daminufe_tig Power Member

    char right(char string[], int pos)
    {
    return string[pos];
    }

    void main()
    {
    char string[50], letra;
    int pos;

    printf("Introduza uma string: ");
    gets(string);

    printf("Introduza a posição: ");
    scanf("%d", &pos);

    letra = right(char string[], int pos);

    printf("A letra é %c", letra);
    }
    -------------------------------------------------------
    Experimenta assim, não tenho a certeza se dá mas é provável k sim!! cumps...:)
     
  4. Warrior

    Warrior Power Member

    Acho que o ele queria seria mais algo do genero

    char * right(char *s,int pos) {
    return &s[pos];
    }

    int main() {
    char s[200];
    int pos
    scanf("%s",&s);
    scanf("%d",&pos);
    printf("%s\n",right(s,pos));
    return 0;
    }
     

Partilhar esta Página