Guest
Public paste!

RoboPaul-config-file

By: a guest | Aug 21st, 2010 | Syntax: C++ | Size: 2.45 KB | Hits: 54 | Expires: Never
Copy text to clipboard
  1.  
  2. ------------------------------------main.cpp------------------------------------------------------
  3. #include <cstdlib>  // for console test
  4. #include <iostream> // for console test
  5. #include "config.h"
  6. using namespace std;
  7.  
  8. int main(int argc, char *argv[])
  9. {
  10.   Load_Config_File("config.cfg");
  11. cout << config_data.Display_X_Resolution;
  12.   Load_Default_Config();
  13.   Save_Config_File("config.cfg");
  14.   Load_Config_File("config.cfg");
  15.     system("PAUSE");
  16.     return EXIT_SUCCESS;
  17. }
  18. ---------------------------------------------------------------------------------------------------------
  19. ---------------------------------config.h----------------------------------------------------------------
  20. struct config_data_type
  21. {
  22. int Display_X_Resolution;
  23. int Display_Y_Resolution;
  24. int Display_BPS;
  25. };
  26. bool Save_Config_File(const char *Config_File);
  27. bool Load_Config_File(const char *Config_File);
  28. bool Load_Default_Config(void);
  29. ---------------------------------------------------------------------------------------------------------
  30. ---------------------------------config.cpp--------------------------------------------------------------
  31. #include <fstream>
  32. #include "config.h"
  33.  
  34. config_data_type config_data;
  35.  
  36. bool Load_Default_Config(void)
  37. {
  38.    config_data.Display_X_Resolution = 1366;
  39.    config_data.Display_Y_Resolution = 768;
  40.    config_data.Display_BPS          = 32;
  41.    return(0);
  42. };
  43.  
  44. bool Save_Config_File(const char *Config_File)
  45. {
  46.   std::fstream configfile(Config_File,std::ios::out|std::ios::binary|std::ios::trunc);
  47.   if (configfile.is_open())
  48.   {
  49.      configfile.write(reinterpret_cast<char*>(&config_data), sizeof(config_data_type));
  50.      configfile.close();
  51.   }
  52.   else return(1);
  53.   return(0);
  54. };
  55.  
  56. bool Load_Config_File(const char *Config_File)
  57. {
  58.   std::fstream configfile(Config_File,std::ios::out|std::ios::binary|std::ios::app);
  59.   if (configfile.is_open())
  60.   {
  61.      configfile.read(reinterpret_cast<char*>(&config_data), sizeof(config_data_type));
  62.      configfile.close();
  63.   }
  64.   else return(1);
  65.   return(0);
  66. };
  67. ---------------------------------------------------------------------------------------------------------
  68.  
  69. The following error is reported when attempting to compile...
  70.  
  71.    C:\2010-c++_game_projects\R.P.G\main.cpp In function `int main(int, char**)':
  72. 15 C:\2010-c++_game_projects\R.P.G\main.cpp `config_data' was not declared in this scope
  73.    C:\2010-c++_game_projects\R.P.G\Makefile.win [Build Error]  [main.o] Error 1