ポインタを使用して2つの文字列を連結する関数を作成しました。strcat(s、t)と同様に、sの最後にtが追加されます。
int main ()
{
char b[] = "Hello";
char b1[] = "world";
string_cat(b,b1);
printf("Concatenated string is %s\n",b);
return 0;
}
int string_cat(char *s, char *d)
{
while(*++s != '\0')
;
*s++ = ' ';
while((*s++ = *d++)!='\0'); // Concatenation
printf("S is %c\n",s[-2]); // Just to see the values
}
連結は正常に機能しますが、要素の格納方法を確認したい場合、すべての要素が負の方向に格納されます。つまり、s[-2]は'd'に等しく、s[-3]は'l'に等しくなります。 。これはそれらが保存される方法ですか?