init taschenrechner and calendar
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
#pragma once
|
||||
|
||||
struct String {
|
||||
|
||||
size_t length;
|
||||
char* data;
|
||||
|
||||
char operator[](int index) {
|
||||
if (index < 0) {
|
||||
return 0;
|
||||
}
|
||||
if (index < length) {
|
||||
return data[index];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
|
||||
String operator""_str(const char* str, size_t length) {
|
||||
return { length, (char*)str };
|
||||
}
|
||||
|
||||
void advance(String &s, int num = 1) {
|
||||
int to_advance = min(s.length, num);
|
||||
s.data = s.data + to_advance;
|
||||
s.length = s.length - to_advance;
|
||||
}
|
||||
|
||||
bool starts_with(String s, String start) {
|
||||
if (s.length < start.length) {
|
||||
return false;
|
||||
}
|
||||
for (int i = 0; i < start.length; i++) {
|
||||
if (s[i] != start[i]) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
Reference in New Issue
Block a user