Compare commits
13 Commits
6bbd07c028
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 1d9fdb6847 | |||
| b2f3a84baf | |||
| a9a236c9b3 | |||
| a153c6e063 | |||
| 7ce8849e81 | |||
| 0555d00bbb | |||
| d93d4f863f | |||
| 7e0c63f470 | |||
| 84b3473665 | |||
| f6e460fa82 | |||
| 2c6371e1d6 | |||
| faa2df92cc | |||
| f29d07dd1a |
@@ -0,0 +1,15 @@
|
||||
#include <stdio.h>
|
||||
|
||||
#include "../libs/string.h"
|
||||
|
||||
int main() {
|
||||
string test = strInit("Hello?");
|
||||
printf("String now: %s\n", test);
|
||||
strAdd(&test, " World?");
|
||||
printf("String now: %s\n", test);
|
||||
strSet(&test, "Another intresting test with string");
|
||||
printf("String now: %s\n", test);
|
||||
free(test);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
|
||||
// It's base. NUL terminator.
|
||||
int nulTerm = 1;
|
||||
|
||||
// -------------------------------------
|
||||
// BASE - String and init of this
|
||||
// -------------------------------------
|
||||
typedef char* string;
|
||||
string strInit(char* s) {
|
||||
string str = malloc(strlen(s) + nulTerm);
|
||||
strcpy(str, s);
|
||||
return str;
|
||||
}
|
||||
void strResize(string* s, int new_size) {
|
||||
*s = realloc(*s, new_size + nulTerm);
|
||||
}
|
||||
// -------------- END ------------------
|
||||
|
||||
|
||||
|
||||
// -------------------------------------
|
||||
// FUNCTION - basic operations
|
||||
// -------------------------------------
|
||||
void strAdd(string* s, char* str_new) {
|
||||
*s = realloc(*s, strlen(*s) + strlen(str_new) + nulTerm);
|
||||
strcat(*s, str_new);
|
||||
}
|
||||
void strSet(string* s, char* str_new) {
|
||||
*s = realloc(*s, strlen(str_new) + nulTerm);
|
||||
strcpy(*s, str_new);
|
||||
}
|
||||
void strCopy(string* dst, string* src) {
|
||||
strcpy(*dst, *src);
|
||||
}
|
||||
// -------------- END ------------------
|
||||
|
||||
|
||||
|
||||
// -------------------------------------
|
||||
// CONVERT - different convert to str
|
||||
// -------------------------------------
|
||||
int numLen(double num) {
|
||||
return snprintf(NULL, 0, "%lf", num);
|
||||
}
|
||||
|
||||
char* int2Str(int* num) {
|
||||
char* buffer = malloc(numLen(*num) + nulTerm);
|
||||
sprintf(buffer, "%d", *num);
|
||||
return buffer;
|
||||
}
|
||||
char* float2Str(float* num) {
|
||||
char* buffer = malloc(numLen(*num) + nulTerm);
|
||||
sprintf(buffer, "%f", *num);
|
||||
return buffer;
|
||||
}
|
||||
char* double2Str(double* num) {
|
||||
char* buffer = malloc(numLen(*num) + nulTerm);
|
||||
sprintf(buffer, "%lf", *num);
|
||||
return buffer;
|
||||
}
|
||||
// -------------- END ------------------
|
||||
@@ -1,3 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#ifdef _WIN32
|
||||
#include <windows.h>
|
||||
#else
|
||||
|
||||
Reference in New Issue
Block a user