snipplrCallback({"id":146162,"title":"c-example-with-input-arguments-using-flags","source":"
#include <iostream><\/span><\/div><\/li> #include <fstream><\/span><\/div><\/li> #include <string.h><\/span><\/div><\/li> #include <string><\/span><\/div><\/li> <\/div><\/li> using<\/span> namespace<\/span> std;<\/span><\/div><\/li> <\/div><\/li> class<\/span> Contact {<\/span><\/div><\/li> public<\/span>:<\/span><\/div><\/li> Contact(<\/span>)<\/span> :<\/span><\/div><\/li> m_firstname(<\/span>""<\/span>)<\/span>, <\/div><\/li> m_lastname(<\/span>""<\/span>)<\/span>, <\/div><\/li> m_email(<\/span>""<\/span>)<\/span>, <\/div><\/li> m_phone(<\/span>""<\/span>)<\/span>, <\/div><\/li> m_debug_mode(<\/span>false<\/span>)<\/span>,<\/div><\/li> m_cnt(<\/span>0<\/span>)<\/span>,<\/div><\/li> m_already_saved(<\/span>false<\/span>)<\/span><\/div><\/li> {<\/span>}<\/span>;<\/span><\/div><\/li> ~Contact(<\/span>)<\/span><\/div><\/li> {<\/span>}<\/span>;<\/span><\/div><\/li> <\/div><\/li> void<\/span> displayHelp(<\/span>)<\/span> {<\/span><\/div><\/li> cout<\/span> <<<\/span> " Welcome to new_user. USAGE:"<\/span> <<<\/span> endl;<\/span><\/div><\/li> cout<\/span> <<<\/span> "-d, --debug Enable debug mode"<\/span> <<<\/span> endl;<\/span><\/div><\/li> cout<\/span> <<<\/span> "-e, --email <email-address> Email of the user"<\/span> <<<\/span> endl;<\/span><\/div><\/li> cout<\/span> <<<\/span> "-h, --help Print this help"<\/span> <<<\/span> endl;<\/span><\/div><\/li> cout<\/span> <<<\/span> "-n, --name <first-name> First name of the user"<\/span> <<<\/span> endl;<\/span><\/div><\/li> cout<\/span> <<<\/span> "-p, --phone <phone-number> Phone number of the user"<\/span> <<<\/span> endl;<\/span><\/div><\/li> cout<\/span> <<<\/span> "--show Show addresslist"<\/span> <<<\/span> endl;<\/span><\/div><\/li> cout<\/span> <<<\/span> "-s, --surname <last-name> Last name of the user"<\/span> <<<\/span> endl;<\/span><\/div><\/li> }<\/span>;<\/span><\/div><\/li> <\/div><\/li> bool<\/span> welcomeScreen(<\/span>int<\/span> argc, char<\/span>*<\/span> argv[<\/span>]<\/span>)<\/span> {<\/span><\/div><\/li> int<\/span> step =<\/span> 2<\/span>;<\/span><\/div><\/li> if<\/span> (<\/span>argc ==<\/span> 1<\/span>)<\/span> return<\/span> false<\/span>;<\/span><\/div><\/li> else<\/span> {<\/span><\/div><\/li> for<\/span> (<\/span>int<\/span> i =<\/span> 1<\/span>;<\/span> i <<\/span> argc;<\/span> i =<\/span> i +<\/span> step)<\/span> {<\/span><\/div><\/li> \tif<\/span> (<\/span>!<\/span>strcmp<\/span>(<\/span>argv[<\/span>i]<\/span>,"-n"<\/span>)<\/span> ||<\/span> !<\/span>strcmp<\/span>(<\/span>argv[<\/span>i]<\/span>,"--name"<\/span>)<\/span>)<\/span>{<\/span><\/div><\/li> \t m_firstname =<\/span> argv[<\/span>i+<\/span>1<\/span>]<\/span>;<\/span><\/div><\/li> \t step =<\/span> 2<\/span>;<\/span><\/div><\/li> <\/div><\/li> \t}<\/span> else<\/span> if<\/span> (<\/span>!<\/span>strcmp<\/span>(<\/span>argv[<\/span>i]<\/span>,"-s"<\/span>)<\/span> ||<\/span> !<\/span>strcmp<\/span>(<\/span>argv[<\/span>i]<\/span>,