sprintf(appName, "mathmlviewer v%s", VERSION);
sprintf(appName, "mathmlviewer v%s", "x.y.z");
main(int argc, char *argv[]){  bool debugMode = false;  sprintf(appName, "mathmlviewer v%s", VERSION);  while (TRUE) {    int option_index = 0;    static struct option long_options[] =    {      { "version", 	 no_argument, NULL, OPTION_VERSION },      { "debug",         no_argument, NULL, OPTION_DEBUG },      { "help",    	 no_argument, NULL, OPTION_HELP },      { "verbose",       optional_argument, NULL, OPTION_VERBOSE },      { NULL,            no_argument, NULL, 0 }    };    int c = getopt_long(argc, argv, "Vv:dh", long_options, &option_index);    if (c == -1) break;    switch (c) {    case OPTION_VERSION:    case 'V':      printVersion();      break;    case OPTION_DEBUG:    case 'd':      debugMode = true;      break;    case OPTION_HELP:    case 'h':      printHelp();      exit(0);      break;    case OPTION_VERBOSE:    case 'v':      if (optarg == NULL) MathEngine::logger.SetLogLevel(0);      else MathEngine::logger.SetLogLevel(*optarg - '0');      break;    case '?':      break;    default:      printf("*** getopt returned %c value\n", c);      break;    }  }#ifdef DEBUG  atexit(checkCounters);#endif // DEBUG#ifdef ENABLE_PROFILE  atexit(checkProfileCounters);#endif // ENABLE_PROFILE  if (optind < argc) {    GUI_init(&argc, &argv, appName, 500, 600);    while (optind < argc) {      if (GUI_load_document(argv[optind]) < 0)	printf("mathmlviewer: fatal error: cannot load document `%s'\n", argv[optind]);      if (debugMode) optind++;      else {	GUI_run();	break;      }    }    GUI_uninit();    GUI_unload_document();  } else printHelp();  Value::Flush();  exit(0);}