kameyagogoのプロフィール

@kameyagogo kameyagogo
ありがとう数1
質問数0
回答数2
ベストアンサー数
1
ベストアンサー率
50%
お礼率
0%

  • 登録日2008/06/24
  • C++の関数

    関数の課題が出たんですが分からないので教えてください。 第1引数と第2引数はchar型の1元配列であり、これら2つの配列(文字列)を連続して表示する関数catstringがあるものとする。 ただし第2引数にはデフォルトの文字列"あいうえお"が設定されている。main関数からキーボード入力で2つの文字列を取得し、 catstringの第1引数のみに文字列が渡される場合と第1、2引数ともに文字列が与えられるプログラムを作成せよ。 やってみましたがエラーが出てしまいます。 #include <iostream> #include <cstdlib> using namespace std; char catstring(char,char="あいうえお"); int main() { char a,b; cin>>a; cin>>b; cout<<catstring(a)<<endl; cout<<catstring(a,b)<<endl; return EXIT_SUCCESS; } char catstring(char x,char y) { char s; s=x+y; return(s); }

    • noname#63549
    • 回答数2
  • deleteで開放するとエラーになる原因がわからない

    deleteでメモリ開放するとエラーになる原因がわからないです。 下記のようなプログラムを作ったのですが、deleteのところでエラーがでます。 エラー内容は 「Windows によって ****.exe でブレークポイントが発生しました。 ヒープが壊れていることが原因として考えられます。****.exe または読み込まれた DLL にバグがあります。 あるいは、****.exe がフォーカスを持っているときに、ユーザーが F12 キーを押したことが原因として考えられます。 可能であれば、出力ウィンドウに詳細な診断情報が表示されます。」 とでます。 ソースは wchar_t *aaa = L"ほげほげ"; wchar_t bbb[200]; wcscpy(bbb, aaa); delete aaa; wprintf(L"%s\n", bbb); getchar(); です。 どこに原因があるのでしょうか? [環境] WindowsXP+VisualC++2008 UNICODE使用