91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c語言字符串函數怎么定義

小億
118
2024-01-23 09:28:13
欄目: 編程語言

在C語言中,字符串函數可以通過以下兩種方式定義:

  1. 使用字符數組作為參數和返回值
#include <stdio.h>

// 字符串長度
int my_strlen(char str[]) {
    int len = 0;
    while (str[len] != '\0') {
        len++;
    }
    return len;
}

// 字符串復制
void my_strcpy(char dest[], char src[]) {
    int i = 0;
    while (src[i] != '\0') {
        dest[i] = src[i];
        i++;
    }
    dest[i] = '\0';
}

// 字符串連接
void my_strcat(char dest[], char src[]) {
    int dest_len = my_strlen(dest);
    int i, j = 0;
    for (i = dest_len; src[j] != '\0'; i++, j++) {
        dest[i] = src[j];
    }
    dest[i] = '\0';
}

int main() {
    char str1[100] = "Hello";
    char str2[100] = "World";

    printf("str1 length: %d\n", my_strlen(str1));
    
    my_strcpy(str1, str2);
    printf("str1 after copy: %s\n", str1);
    
    my_strcat(str1, str2);
    printf("str1 after concatenation: %s\n", str1);

    return 0;
}
  1. 使用指針作為參數和返回值
#include <stdio.h>

// 字符串長度
int my_strlen(char *str) {
    int len = 0;
    while (*str != '\0') {
        len++;
        str++;
    }
    return len;
}

// 字符串復制
char* my_strcpy(char *dest, char *src) {
    char *p = dest;
    while (*src != '\0') {
        *dest = *src;
        dest++;
        src++;
    }
    *dest = '\0';
    return p;
}

// 字符串連接
char* my_strcat(char *dest, char *src) {
    char *p = dest;
    while(*dest != '\0') {
        dest++;
    }
    while (*src != '\0') {
        *dest = *src;
        dest++;
        src++;
    }
    *dest = '\0';
    return p;
}

int main() {
    char str1[100] = "Hello";
    char str2[100] = "World";

    printf("str1 length: %d\n", my_strlen(str1));
    
    my_strcpy(str1, str2);
    printf("str1 after copy: %s\n", str1);
    
    my_strcat(str1, str2);
    printf("str1 after concatenation: %s\n", str1);

    return 0;
}

無論使用字符數組還是指針,都可以實現相同的功能。但是需要注意指針的使用需要更謹慎,避免指針操作超出字符串的范圍。

0
五莲县| 乐昌市| 临城县| 乳源| 龙口市| 大兴区| 敦化市| 达州市| 南陵县| 策勒县| 嘉祥县| 新密市| 原平市| 渝北区| 衡阳市| 达尔| 方山县| 长宁县| 甘洛县| 双江| 巨鹿县| 绥阳县| 柳林县| 横山县| 罗山县| 怀安县| SHOW| 屏东市| 华阴市| 辰溪县| 仙桃市| 云阳县| 精河县| 资讯| 辽宁省| 肥东县| 榆社县| 伊吾县| 安溪县| 封丘县| 固阳县|