| Kbiddle52 (3) | |
|
Hi. I've been stuck on this for hours and don't really know what to do. I have a file that I have to read from stdin. An example is M //map mode 4 //Each room is N by N 2 //Number of rooms aka R //blah blah can have comments wherever //room 1 .... #... .#.. #... //room 0 .B.. .... 1..S #..# My end goal is to make R-1 character arrays, containing the setup of each room. Anyone have any tips for starting points. I've been looking around online and haven't gotten much done. I can't use fstream, just iostream. Edit: What i am thinking right now is skipping to the rooms then reading N characters out and down, making that the R-1 array and repeating the process. Now my current question is... After I read in the first 3 numbers. Lets say there are 5 lines of comments, each starts with //, how could I skip over this? My plan currently is cin >> char if char is /, skip the line and go to next. repeat For skipping the line, I was thinking of using a getline to move to the next line. Would that work? | |
|
Last edited on
|
|
| gamemanj (4) | |
|
To read a commented line without problems: void readcommentedline(std::string * output) { std::getline(std::cin,*output); int position=output->find("//"); if (position==-1) { position=output->size(); } *output=output->substr(0,position); } To use that: readcommentedline(&output); (EDIT:Dealt with the case of there being no comment.) | |
|
Last edited on
|
|