Subversion Repositories Keine

Rev

Rev 2 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2 Rev 4
Line 1... Line 1...
1
/* $Id: util.c 2 2024-09-11 09:16:23Z nishi $ */
1
/* $Id: util.c 4 2024-09-11 10:22:22Z nishi $ */
2
 
2
 
3
#include "kn_util.h"
3
#include "kn_util.h"
4
 
4
 
5
#include <string.h>
5
#include <string.h>
6
#include <stdlib.h>
6
#include <stdlib.h>
7
 
7
 
8
char* kn_strcat(const char* a, const char* b){
8
char* kn_strcat(const char* a, const char* b) {
9
	char* str = malloc(strlen(a) + strlen(b) + 1);
9
	char* str = malloc(strlen(a) + strlen(b) + 1);
10
	memcpy(str, a, strlen(a));
10
	memcpy(str, a, strlen(a));
11
	memcpy(str + strlen(a), b, strlen(b));
11
	memcpy(str + strlen(a), b, strlen(b));
12
	str[strlen(a) + strlen(b)] = 0;
12
	str[strlen(a) + strlen(b)] = 0;
13
	return str;
13
	return str;
14
}
14
}
15
 
15
 
16
char* kn_strdup(const char* a){
16
char* kn_strcat3(const char* a, const char* b, const char* c) {
17
	return kn_strcat(a, "");
17
	char* tmp = kn_strcat(a, b);
-
 
18
	char* str = kn_strcat(tmp, c);
-
 
19
	free(tmp);
-
 
20
	return str;
18
}
21
}
-
 
22
 
-
 
23
char* kn_strdup(const char* a) { return kn_strcat(a, ""); }