3

たとえば、文字列 "str1" を新しい文字列 "str2" にコピーするとします。

void function(const char* str1){
    char* str2;
    str2 = (char *) malloc(sizeof(char) * (strlen(str1) + 1));
    strcpy(str2, str1);
    ...
}

malloc の引数は次のようにする必要があります。

sizeof(char) * (strlen(str1)+1)

あるいは単に:

sizeof(char) * strlen(str1)
4

4 に答える 4