C言語のstrcpy関数において、元の文字列が空の場合はどのように扱うのですか?

C言語では、strcpy関数は1つの文字列を別の文字列にコピーするために使用されます。ソース文字列が空の場合、ターゲット文字列をただちに空にします。以下はソース文字列が空の場合の処理の例コードです:

#include <stdio.h>
#include <string.h>

int main() {
    char src[] = "";
    char dest[100];

    if (strlen(src) == 0) {
        dest[0] = '\0'; // 直接将目标字符串置空
    } else {
        strcpy(dest, src);
    }

    printf("目标字符串: %s\n", dest);

    return 0;
}

上記のコードでは、最初に元の文字列srcが空かどうかを判断し、空であれば、目的の文字列destの最初の文字を’\0’、つまり空白文字に設定します。元の文字列が空でない場合は、strcpy関数を使用して元の文字列を目的の文字列にコピーします。最後に、目的の文字列の内容を出力します。

bannerAds