Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Programa lê nome e sobrenome

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    C / C++ Programa lê nome e sobrenome

    Código:
    #include <stdio.h>
    #include <locale.h>
    
    int main()
    {
        setlocale(LC_ALL, "Portuguese");
          char nome[100];
          char sobrenome[100];
          printf("Digite seu nome:\n");
          scanf("%s", nome);
          printf("Digite seu sobrenome:\n");
          scanf("%s", sobrenome);
          printf("Seu nome é: %s %s\n", nome, sobrenome);
          return 0;
    }
    Similar Threads

  • Font Size
    #2
    Postado Originalmente por Crash_X Ver Post
    Código:
    #include <stdio.h>
    #include <locale.h>
    
    int main()
    {
        setlocale(LC_ALL, "Portuguese");
          char nome[100];
          char sobrenome[100];
          printf("Digite seu nome:\n");
          scanf("%s", nome);
          printf("Digite seu sobrenome:\n");
          scanf("%s", sobrenome);
          printf("Seu nome é: %s %s\n", nome, sobrenome);
          return 0;
    }
    Usar scanf para ler strings é um problema por falta de limitação de caracteres, isso pode gerar um stack overflow se passar do limite de caracteres que sua string(ou vetor de caracteres suporta).
    A questão é que mesmo utilizando fgets se tu passa do limite de caracteres que está setado nele ou que vetor suporta você vai ter um undefined behaviour.
    Basicamente tu precisa setar um vetor enorme pra não quebrar teu programa por undefined behaviour, o que ainda pode acontecer anyway, e a questão pior é que nem os debugger como valgrind vão conseguir identificar o problema.
    Yes, I am a criminal. My crime is that of curiosity. My crime is
    that of judging people by what they say and think, not what they look like.
    My crime is that of outsmarting you, something that you will never forgive me
    for.

    I am a hacker, and this is my manifesto. You may stop this individual,
    but you can't stop us all... after all, we're all alike.

    Comment


    • Font Size
      #3
      Nome &amp; Sobrenome

      Código:
      // Includes
      #include <stdio.h>
      #include <stdlib.h>
      
      // Programa Principal
      void main()
      {
      	char c_Nome[32], c_Sobrenome[32];
      
      	printf("Nome?: ");
      	scanf("%s", &c_Nome);
      
      	printf("Sobrenome?: ");
      	scanf("%s", &c_Sobrenome);
      
      	printf("Nome & Sobrenome: %s %s", c_Nome, c_Sobrenome);
      }

      Comment

      X
      Working...
      X