Review
You will want to do a few things here. First, replace gets with fgets. Then, you're going to want to use strcmp from string.h to compare the input with the desired result. The code listed below has been updated with a working example with the previously mentioned recommendations. This isn't perfect and there are other ways to accomplish the same task. Explore other options that are available when you have a chance and see if you can improve on this example.
#include <stdio.h>
#include <string.h>
int main()
{
char name[10],
pasword[10];
printf("enter you user name :");
// Use fgets as gets is insecure and can easily lead to buffer overflow exploits
fgets(name, sizeof(char) * sizeof(name), stdin);
// Remove \n from fgets stdin read with null character so as to not have to include
// in strcmp later.
name[strlen(name) - 1] = '\0';
printf("enter your pasword : ");
fgets(pasword, sizeof(char) * sizeof(pasword), stdin);
printf("your name : %s \n your password : %s \n", name, pasword);
// If strcmp result > 0 || < 0 it's not a match
if (strcmp(name, "youcef") != 0)
{
printf("name undefined\n");
}
else
{
printf("finde name");
}
}
0 views0
Comments