#include (stdio.h) #include (string.h) typedef enum {joy - 1, sadness, surprise-4, disgust 8, trust - 16} emotion; char* tostr(emotion e) { char* out (char*) malloc(50), *temp-out; if(e & joy) strcpy(temp, "joy "), temp +- 4; if(e & sadness) strcpy(temp, "sadness"), temp +- 8; if(e & surprise) strcpy(temp, "surprise "), temp +-9; if(e & disgust) strcpy(temp, "disgust "), temp += 8; if(e & trust) strcpy(temp, "trust "), temp +- 6; return out[temp - out - 1] = 0, out; } void main() { emotion el - sadness/surprise/disgust, e2-joy surprise trust; printf("el is %d and e2 is %s. mutual emotion is %s.", el, tostr(e2), tostr(~(el ^e2))); }

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
100%

Please explain the output. I need to know why the output given is given. show in steps if possible 

#include (stdio.h)
#include (string.h)
-
typedef enum {joy - 1, sadness, surprise - 4, disgust 8, trust 16} emotion;
char* tostr(emotion e) {
char* out (char*) malloc(50), *temp = out;
-
if(e & joy) strcpy(temp, "joy "), temp +− 4;
if(e & sadness) strcpy(temp, "sadness "), temp +− 8;
if(e & surprise) strcpy(temp, "surprise "), temp +- 9;
if(e & disgust) strcpy(temp, "disgust "), temp += 8;
if(e & trust) strcpy(temp, “trust "), temp +− 6;
return out[temp-out - 1] = 0, out;
}
void main() {
emotion el
sadness|surprise|disgust, e2 - joy|surprise trust;
printf("el is %d and e2 is %s. mutual emotion is %s.", el, tostr(e2), tostr(~(el ^e2)));
}
Transcribed Image Text:#include (stdio.h) #include (string.h) - typedef enum {joy - 1, sadness, surprise - 4, disgust 8, trust 16} emotion; char* tostr(emotion e) { char* out (char*) malloc(50), *temp = out; - if(e & joy) strcpy(temp, "joy "), temp +− 4; if(e & sadness) strcpy(temp, "sadness "), temp +− 8; if(e & surprise) strcpy(temp, "surprise "), temp +- 9; if(e & disgust) strcpy(temp, "disgust "), temp += 8; if(e & trust) strcpy(temp, “trust "), temp +− 6; return out[temp-out - 1] = 0, out; } void main() { emotion el sadness|surprise|disgust, e2 - joy|surprise trust; printf("el is %d and e2 is %s. mutual emotion is %s.", el, tostr(e2), tostr(~(el ^e2))); }
Expert Solution
steps

Step by step

Solved in 3 steps with 1 images

Blurred answer
Knowledge Booster
Declaring and Defining the Function
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education