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


Ignore:
Timestamp:
Sep 13, 2024, 7:28:20 PM (2 months ago)
Author:
Nishi
Message:

vhost

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Common/string.c

    r5 r6  
    1616char* cm_strdup(const char* str) { return cm_strcat(str, ""); }
    1717
    18 char* cm_trimstart(const char* str){
     18char* cm_trimstart(const char* str) {
    1919        int i;
    20         for(i = 0; str[i] != 0; i++){
    21                 if(str[i] != ' ' && str[i] != '\t'){
     20        for(i = 0; str[i] != 0; i++) {
     21                if(str[i] != ' ' && str[i] != '\t') {
    2222                        return cm_strdup(str + i);
    2323                }
     
    2626}
    2727
    28 char* cm_trimend(const char* str){
     28char* cm_trimend(const char* str) {
    2929        char* s = cm_strdup(str);
    3030        int i;
    31         for(i = strlen(s) - 1; i >= 0; i--){
    32                 if(s[i] != '\t' && s[i] != ' '){
     31        for(i = strlen(s) - 1; i >= 0; i--) {
     32                if(s[i] != '\t' && s[i] != ' ') {
    3333                        s[i + 1] = 0;
    3434                        break;
     
    3838}
    3939
    40 char* cm_trim(const char* str){
     40char* cm_trim(const char* str) {
    4141        char* tmp = cm_trimstart(str);
    4242        char* s = cm_trimend(tmp);
     
    4545}
    4646
    47 char** cm_split(const char* str, const char* by){
     47char** cm_split(const char* str, const char* by) {
    4848        int i;
    4949        char** r = malloc(sizeof(*r));
     
    5555        bool dq = false;
    5656        bool sq = false;
    57         for(i = 0;; i++){
     57        for(i = 0;; i++) {
    5858                int j;
    5959                bool has = false;
    60                 for(j = 0; by[j] != 0; j++){
    61                         if(by[j] == str[i]){
     60                for(j = 0; by[j] != 0; j++) {
     61                        if(by[j] == str[i]) {
    6262                                has = true;
    6363                                break;
    6464                        }
    6565                }
    66                 if(!(dq || sq) && (has || str[i] == 0)){
    67                         if(strlen(b) > 0){
     66                if(!(dq || sq) && (has || str[i] == 0)) {
     67                        if(strlen(b) > 0) {
    6868                                char** old = r;
    6969                                int j;
    70                                 for(j = 0; old[j] != NULL; j++);
     70                                for(j = 0; old[j] != NULL; j++)
     71                                        ;
    7172                                r = malloc(sizeof(*r) * (j + 2));
    7273                                for(j = 0; old[j] != NULL; j++) r[j] = old[j];
     
    7879                        b[0] = 0;
    7980                        if(str[i] == 0) break;
    80                 }else{
    81                         if(str[i] == '"' && !sq){
     81                } else {
     82                        if(str[i] == '"' && !sq) {
    8283                                dq = !dq;
    83                         }else if(str[i] == '\'' && !dq){
     84                        } else if(str[i] == '\'' && !dq) {
    8485                                sq = !sq;
    85                         }else{
     86                        } else {
    8687                                cbuf[0] = str[i];
    8788                                char* tmp = b;
     
    9596}
    9697
    97 bool cm_strcaseequ(const char* a, const char* b){
     98bool cm_strcaseequ(const char* a, const char* b) {
    9899        if(a == NULL) return false;
    99100        if(b == NULL) return false;
    100101        if(strlen(a) != strlen(b)) return false;
    101102        int i;
    102         for(i = 0; a[i] != 0; i++){
     103        for(i = 0; a[i] != 0; i++) {
    103104                if(tolower(a[i]) != tolower(b[i])) return false;
    104105        }
Note: See TracChangeset for help on using the changeset viewer.