Changeset 212 in Main for trunk/Common/string.c


Ignore:
Timestamp:
Oct 3, 2024, 2:44:55 AM (6 weeks ago)
Author:
Nishi
Message:

compiles on vc6

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Common/string.c

    r70 r212  
    88
    99char* cm_strcat(const char* a, const char* b) {
     10        char* str;
    1011        if(a == NULL) a = "";
    1112        if(b == NULL) b = "";
    12         char* str = malloc(strlen(a) + strlen(b) + 1);
     13        str = malloc(strlen(a) + strlen(b) + 1);
    1314        memcpy(str, a, strlen(a));
    1415        memcpy(str + strlen(a), b, strlen(b));
     
    2728
    2829bool cm_endswith(const char* str, const char* end) {
     30        int i;
    2931        if(strlen(str) < strlen(end)) return false;
    30         int i;
    3132        for(i = strlen(str) - strlen(end); i < strlen(str); i++) {
    3233                if(str[i] != end[i - strlen(str) + strlen(end)]) return false;
     
    3637
    3738bool cm_nocase_endswith(const char* str, const char* end) {
     39        int i;
    3840        if(strlen(str) < strlen(end)) return false;
    39         int i;
    4041        for(i = strlen(str) - strlen(end); i < strlen(str); i++) {
    4142                if(tolower(str[i]) != tolower(end[i - strlen(str) + strlen(end)])) return false;
     
    7677        int i;
    7778        char** r = malloc(sizeof(*r));
    78         r[0] = NULL;
    7979        char* b = malloc(1);
    80         b[0] = 0;
    8180        char cbuf[2];
    82         cbuf[1] = 0;
    8381        bool dq = false;
    8482        bool sq = false;
     83        r[0] = NULL;
     84        b[0] = 0;
     85        cbuf[1] = 0;
    8586        for(i = 0;; i++) {
    8687                int j;
     
    113114                                sq = !sq;
    114115                        } else {
     116                                char* tmp = b;
    115117                                cbuf[0] = str[i];
    116                                 char* tmp = b;
    117118                                b = cm_strcat(tmp, cbuf);
    118119                                free(tmp);
     
    125126
    126127bool cm_strcaseequ(const char* a, const char* b) {
     128        int i;
    127129        if(a == NULL) return false;
    128130        if(b == NULL) return false;
    129131        if(strlen(a) != strlen(b)) return false;
    130         int i;
    131132        for(i = 0; a[i] != 0; i++) {
    132133                if(tolower(a[i]) != tolower(b[i])) return false;
     
    155156        int i;
    156157        char* result = malloc(1);
     158        char cbuf[2];
    157159        result[0] = 0;
    158         char cbuf[2];
    159160        cbuf[1] = 0;
    160161        for(i = 0; str[i] != 0; i++) {
     
    184185        int i;
    185186        char* result = malloc(1);
     187        char cbuf[2];
    186188        result[0] = 0;
    187         char cbuf[2];
    188189        cbuf[1] = 0;
    189190        for(i = 0; str[i] != 0; i++) {
     
    191192                if('!' <= str[i] && str[i] <= '@' && str[i] != '.' && str[i] != '-' && str[i] != '/' && !('0' <= str[i] && str[i] <= '9')) {
    192193                        char code[4];
     194                        char* tmp = result;
    193195                        sprintf(code, "%%%02X", str[i]);
    194                         char* tmp = result;
    195196                        result = cm_strcat(tmp, code);
    196197                        free(tmp);
Note: See TracChangeset for help on using the changeset viewer.