Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <errno.h> //perror()
- #include <stdio.h> //perror()
- #include <stdlib.h> //exit(), atoi()
- #include <unistd.h> //read(), write()
- #define BUFF_SIZE 4096
- int main(int argc, char const *argv[]) {
- int first = 0;
- int second = 0;
- int sum = 0;
- int n = 0;
- char buffer[BUFF_SIZE];
- printf("Inserisci il primo addendo (-1 per uscire):\n");
- while (((n = read(STDIN_FILENO, buffer, BUFF_SIZE)) > 0) &&
- ((first = atoi(buffer)) != -1)) {
- printf("Inserisci il secondo addendo:\n");
- if (read(STDIN_FILENO, buffer, BUFF_SIZE) == -1) {
- perror(argv[0]);
- exit(EXIT_FAILURE);
- }
- second = atoi(buffer);
- sum = first + second;
- printf("La somma e:\n");
- int size_byte = sprintf(buffer, "%d", sum);
- if (write(STDOUT_FILENO, buffer, size_byte) == -1) {
- perror(argv[0]);
- exit(EXIT_FAILURE);
- }
- printf("\n\nInserisci il primo addendo (diverso da -1):\n");
- }
- if (n == -1) {
- perror(argv[0]);
- exit(EXIT_FAILURE);
- }
- exit(EXIT_SUCCESS);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement