-2

同じアドレスを渡すことにより、外部関数によってメイン関数に存在する文字列変数を変更したいと思います。

以下は私が書いたコードです

void change(char * str)
{
    str="Max";
}

void main() 
{    
    char a[]="Test";
    change(a);

    cout<<a;
}

私が間違っている場合は修正してください

Borland Turbo C++ 4.5 を使用していることに注意してください。

4

4 に答える 4

3

参照渡しを意味していると思います。次のように、指定された文字列を参照によって外部関数に渡すことができます。

void modifyString( string& str)
{
   //modify the string
}

mainで、この関数を呼び出すことができます。

于 2013-04-10T01:50:28.707 に答える
1

あなたはこれを求めている:

void change(char * str)
{
    strcpy(str,"Max");
}

ポインターとは何か、ポインター自体は、それが指すものだけを変更することはできないことを思い出してください。

于 2013-04-10T02:09:19.393 に答える