なんで?

[戻る]
スターライト 2003/09/17(水) 23:43:13
プログラムは ある程度わかってんですが、
C言語って めんどくさいっス。
文字と 文字の 足し算って どうやるですかね。

char aa[100]="aiueo";
char bb[100]="abcde";
char cc[100];

cc=aa+bb;

でなんで"aiueoabcde"ができないんだ?


誰か おしえて くださいませませ。

2003/09/17(水) 23:56:01
>プログラムは ある程度わかってんですが

わかってないだろ。入門書嫁。

επιστημη 2003/09/18(木) 00:12:04
#include <iostream>
#include <string>

int main() {
  std::string aa = "aiueo";
  std::string bb = "abcde";
  std::string cc;

  cc = aa + bb;

  std::cout << cc << std::endl;
  return 0;
}

επιστημη 2003/09/18(木) 01:05:08
失礼。Cでしたね。

> 文字と 文字の 足し算って どうやるですかね。
関数 strcat を使います。

スターライト 2003/09/18(木) 15:35:26
[[解決]]
cc=strcat(aa,bb);
って書いてもだめだったな。
char *' から 'char [100]' に変換することはできません。
ってエラーされました。はて?

でも最初に見せてもらったコードなら
うまく動いたので、一応解決とします。

>>わかってないだろ。入門書嫁。
まあ、C言語は初心者ですね。
でも入門書持ってないからここで聞いてるんですが。(^^;

επιστημさん、どうもー。

2003/09/18(木) 16:34:18
たいへん不快ですのできちんとした言葉遣いをしていただきたいものです。

MSDNのオンライン版もあります。
例えば strcat については下記URLでご覧になれます。
http://www.microsoft.com/japan/msdn/library/default.asp?
url=/japan/msdn/library/ja/vclib/html/_crt_strcat.2c_.wcscat.2c_._mbscat.asp

>cc=strcat(aa,bb);
>って書いてもだめだったな。
ここで strcat は aa を返します。
ポインタと配列に関して勉強されてはいかがでしょうか。
なぜできないのかも理解できるのではないかと思います。

トスポ 2003/09/18(木) 18:37:55
>>>わかってないだろ。入門書嫁。
>まあ、C言語は初心者ですね。
>でも入門書持ってないからここで聞いてるんですが。(^^;

この言動・・・プログラマ失格

アイススケーター 2003/09/18(木) 22:09:14
strcat を利用する場合

char    a[100] = "abcde";
char    b[100] = "fghij";
char    c[100];

sprintf( c, "%s", a);
strcat( c, b);

こんなんでどうでしょう

επιστημη 2003/09/18(木) 23:08:23
> sprintf( c, "%s", a);

strcpy(c, a); で十分。

古いスレッドには追加発言できません。