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

string


agam

Pergunta

Tenho este exercício para resolver:

Escrever uma função que receba como parâmetro duas strings, bem como um valor inteiro que representa uma posição. A função deve, portanto, inserir a segunda string no na posição indicada da primeira. Escreva um programa que receba estas duas strings do usuário, o valor da posição desejada, e chame a função anteriormente implementada e exiba o resultado ao usuário na tela. Para imprimir na tela e tirar o print screen, mostre o resultado utilizando o seu primeiro nome como string 1 e o seu último nome como string 2, e a posição de teste deverá ser o último digito do seu RU.

o algoritmo que estou tentando é este:

#include <stdio.h>
#include<stdlib.h>
#include<string.h>

void contatenarStrings(char  string1[], char string2[], int pos);

int main(void) {
    char lastName[20];
    char firstName[20];

    int pos;

    pintf("Digite seu primeiro nome");
    gets_s(firstName);

    printf("digite seu ultimo sobrenome")
    gets_s(lastName);

    printf("Digite o intervalo")

    scanf_s("%d", &pos);

    contatenarStrings(firstName, lastName, pos);

    printf("%s\n", firstName);
    return 0;
}

void contatenarStrings(char  string1[], char string2[], int pos)
{
    char tmp[20];
    strncpy_s(tmp, string1, pos);
    strcat_s(tmp, string2);
    strcat_s(tmp, &string1[pos]);
    strcat_s(tmp, string2);
    strcpy(string1, tmp);
}

a parte que está me dando problema é a ultima linha que fica me dando está mensagem de alerta e ão deixa executar:

 C4996     'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

jjá tentei mudar a última linha para strcpy_s também não funciona aparece estás mensagens:

C2660     'strcpy_s': função não recebe 2 argumentos    parametro 

 E0304    nenhum instância de função sobrecarregada "strcpy_s" corresponde à lista de argumentos 

pessoa ajuda para saber se alguém sabe como resolver isso ou se tem algum outro jeito de obter o  resultado que pede. ex do resultado: primeira string: joão, segunda string lopes e intervalo 2, tem que me retornar na tela jolopesão.

já tentei colocar strcpy(tmp,string1) na ultima linha executa mas não me da o resultado desejado no caso só aparece a primeira string, nada da certo.

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...