test_parser.c
上传用户:mei_mei897
上传日期:2007-01-05
资源大小:82k
文件大小:3k
源码类别:

手机短信编程

开发平台:

Unix_Linux

  1. /* -------------------------------------------------------------------- */
  2. /* SMS Client, send messages to mobile phones and pagers */
  3. /* */
  4. /* test_parser.c */
  5. /* */
  6. /*  Copyright (C) 1997,1998 Angelo Masci */
  7. /* */
  8. /*  This library is free software; you can redistribute it and/or */
  9. /*  modify it under the terms of the GNU Library General Public */
  10. /*  License as published by the Free Software Foundation; either */
  11. /*  version 2 of the License, or (at your option) any later version. */
  12. /* */
  13. /*  This library is distributed in the hope that it will be useful, */
  14. /*  but WITHOUT ANY WARRANTY; without even the implied warranty of */
  15. /*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU */
  16. /*  Library General Public License for more details. */
  17. /* */
  18. /*  You should have received a copy of the GNU Library General Public */
  19. /*  License along with this library; if not, write to the Free */
  20. /*  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
  21. /* */
  22. /*  You can contact the author at this e-mail address: */
  23. /* */
  24. /*  angelo@styx.demon.co.uk */
  25. /* */
  26. /* -------------------------------------------------------------------- */
  27. /* $Id$
  28.    -------------------------------------------------------------------- */
  29. #include <stdio.h>
  30. #include "common.h"
  31. #include "logfile.h"
  32. #include "gs_token.h"
  33. #include "gs_translate.h"
  34. /* -------------------------------------------------------------------- */
  35. #if !defined(MLOGFILE)
  36. #error "MLOGFILE undefined"
  37. #else
  38. #define LOGFILE         MLOGFILE
  39. #endif
  40. #if !defined(MLOGLEVEL)
  41. #error "MLOGLEVEL undefined" 
  42. #else
  43. #define LOGLEVEL MLOGLEVEL
  44. #endif
  45. /* -------------------------------------------------------------------- */
  46. static TOKEN_HEAP
  47. *global_heap;
  48. /* -------------------------------------------------------------------- */
  49. /* -------------------------------------------------------------------- */
  50. int main(int argc, char *argv[])
  51. {
  52. char  *str;
  53. /* ---------------------------- */
  54. set_logfile(LOGFILE);
  55. set_loglevel(LOGLEVEL);
  56. set_consolelog(TRUE);
  57. /* ---------------------------- */
  58. if (argc != 3)
  59. {
  60. lprintf(LOG_ERROR, "Usage: %s <variable> <file>n", argv[0]);
  61. exit(1);
  62. }
  63. global_heap = gs_parse_file(argv[2]);
  64. if (global_heap == NULL)
  65. {
  66. lprintf(LOG_ERROR, "Error: Parsing file '%s'n", argv[2]);
  67. exit(1);
  68. }
  69. dump_heap(global_heap, "global");
  70. str = get_strvalue(global_heap, argv[1]);
  71. if (str == NULL)
  72. { printf("Var '%s' Not Foundn", argv[1]);
  73. }
  74. else
  75. { printf("Var '%s' Foundn", argv[1]);
  76. printf("%s = %sn", argv[1], str);
  77. }
  78. free_heap(global_heap);
  79. return 0;
  80. }