0

こんにちは、次のように char を別の char に追加することは可能ですか?

char *myChar = ("Hello ");
*myChar += ("World!");
printf("%c", *myChar);

ありがとうございました!

4

3 に答える 3

3

このようではありません。結合された文字列を構築するには、バッファを提供し、 and を使用する必要がstrcpyあります。strcat

于 2013-10-23T09:41:06.103 に答える
2

2 つの文字列を連結する場合は、ライブラリ関数を使用しますstrcat

テストプログラム

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

int main (void)
{
   char src[50], dest[50];

   strcpy(src,  "Hello ");
   strcpy(dest, "World");

   strcat(src, dest);

   printf("Concatenated string is : |%s|", src);

   return(0);
} 
于 2013-10-23T09:42:15.583 に答える
-1

私があなたの質問を文字通り「はい」と解釈すれば、それは可能ですが、あなたの例は別のものです。

次のように 2 文字を追加できます。

char a = 'a';
char b = 'b';
char result = a + b;

2 つの char ポインタを追加できますが、範囲外でないことを確認しない限り、無効なポインタになる可能性があります。

char* str1 = "string1";
char* str2 = "string2";
char* result = str1 + str2;

リテラルを使用する場合、リテラルは常に const であるため、一時ストレージが必要です。これはおそらくあなたが得ることができる最も近いものです:

printf("%s%s","Hello ","World");
于 2013-10-23T09:48:23.310 に答える