Menu

[363073]: / tools.cpp  Maximize  Restore  History

Download this file

90 lines (74 with data), 2.5 kB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/*
parkoplatzo - 2011 by Christian Wahlmann
This file is part of parkoplatzo.
parkoplatzo is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
parkoplatzo is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with parkoplatzo. If not, see <http://www.gnu.org/licenses/>.
*/
#include "tools.h"
#include <sstream>
#include <list>
#include "car.h"
/*
* tools.cpp
*
* Created on: 10.06.2011
* Author: Christian Wahlmann
* This file is part of parkoplatzo_qt.
* parkoplatzo_qt is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* parkoplatzo_qt is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with parkoplatzo_qt. If not, see <http://www.gnu.org/licenses/>.
*/
//
std::string tools::get_line(std::istream& is) {
char buffer[1024];
is.getline(buffer,1024);
// std::cout << "["<<std::string(buffer)<<"]\n";
return std::string(buffer);
}
bool tools::is_alpha(char c) {
return (c>='a' && c<='z') || (c>='A' && c<='Z');
}
bool tools::is_numeric(char c) {
return (c>='0' && c<='9');
}
std::string tools::get_word(std::istream& is) {
std::string e;
char c=is.get();
while (!is.eof() && (is_alpha(c) || is_numeric(c))) {
e+=c;
c=is.get();
}
if (!is.eof()) is.putback(c);
return e;
}
void tools::eat_white(std::istream& is) {
char c=is.get();
while (!is.eof() && (c==' ' || c=='\t' || c=='\n'))
c=is.get();
if (!is.eof()) is.putback(c);
}
int tools::get_int(std::istream& is) {
int e=0;
char c=is.get();
while (!is.eof() && is_numeric(c)) {
e=e*10+c-'0';
c=is.get();
}
if (!is.eof()) is.putback(c);
return e;
}