nitpicking and better c standard compliant code

This commit is contained in:
Oliver Feldt 2014-06-10 22:22:10 +02:00
parent e315738b37
commit 297863493f

View file

@ -1,26 +1,28 @@
#include <string.h> #include <string.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <errno.h>
int main() { const char *password = "23door42\n";
int ret;
size_t nbytes = 0; int main(void) {
char *input_str = NULL; size_t input_size = 0;
char *password = "23door42\n"; char *input_line = NULL;
printf("Please enter Password: "); printf("Please enter Password: ");
ret = getline(&input_str, &nbytes, stdin);
if (ret == -1) { // read in password from standard input, exit on error.
puts("Error"); if (getline(&input_line, &input_size, stdin) == -1) {
} else if (strcmp(input_str, password) == 0) { perror("Error");
puts("Success"); exit(EXIT_FAILURE);
ret = 0; }
// compare password, print info, exit appropriately
if (strcmp(input_line, password) == 0) {
puts("Success!");
exit(EXIT_SUCCESS);
} else { } else {
puts("How about no?!"); puts("How about no?!");
ret = -1; exit(EXIT_FAILURE);
} }
free(input_str);
return ret;
} }