[過去ログ]
【初心者歓迎】C/C++室 Ver.100【環境依存OK】 [無断転載禁止]©2ch.net (1002レス)
【初心者歓迎】C/C++室 Ver.100【環境依存OK】 [無断転載禁止]©2ch.net http://mevius.5ch.net/test/read.cgi/tech/1478440682/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
932: デフォルトの名無しさん [] 2017/07/13(木) 18:16:27.80 ID:PDgj9Ebq #include<stdio.h> #include<string.h> #define NUM 10 int main(void) { int length; char name[NUM * 2 + 1]; char family_name[NUM + 1]; char first_name[NUM + 1]; printf("姓を入力してください\n"); scanf("%s", family_name); printf("名を入力してください\n"); scanf("%s", first_name); strcat(name, family_name); strcat(name, first_name); length = strlen(name); printf("名前:%s\n", name); printf("長さ:%d\n", length); return 0; } このプログラムで入力まではちゃんとできてるみたいなんですがstrcatのところでおかしくなって 結合結果がフフフフフフフってなります。どうしてでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1478440682/932
933: デフォルトの名無しさん [sage] 2017/07/13(木) 18:29:33.51 ID:lX8cJUTX 笑われてんじゃね? http://mevius.5ch.net/test/read.cgi/tech/1478440682/933
934: デフォルトの名無しさん [sage] 2017/07/13(木) 18:30:25.16 ID:lX8cJUTX マヂレスすると、nameが不定 http://mevius.5ch.net/test/read.cgi/tech/1478440682/934
935: デフォルトの名無しさん [sage] 2017/07/13(木) 18:34:34.28 ID:a0isPZOF >>932 char name[NUM * 2 + 1] = {0}; http://mevius.5ch.net/test/read.cgi/tech/1478440682/935
936: デフォルトの名無しさん [] 2017/07/13(木) 18:37:48.37 ID:PDgj9Ebq ありがとうございました http://mevius.5ch.net/test/read.cgi/tech/1478440682/936
937: デフォルトの名無しさん [sage] 2017/07/13(木) 19:34:29.65 ID:b1PvI/zl どうでもいいけど、 char name[NUM * 2 + 1] = ""; 普通こうじゃね? char name[NUM * 2 + 1] = {'0'}; これでも良い コンパイル結果はたぶん全部同じだけど http://mevius.5ch.net/test/read.cgi/tech/1478440682/937
938: デフォルトの名無しさん [sage] 2017/07/13(木) 20:27:20.55 ID:bV5zFMan >>932 俺のところで試してみたらフフフノフフフになった http://mevius.5ch.net/test/read.cgi/tech/1478440682/938
939: デフォルトの名無しさん [sage] 2017/07/13(木) 20:43:44.17 ID:lX8cJUTX Visual Studio のデバッグビルドだと、不定メモリをCCで埋める だからこれに対応する'フ'が表示される なぜ途中が'ノ'になるかはわからん strcatではCCの後の0を探してその後に文字列をコピーするから、0の位置によっては例外が発生したり動作がおかしくなったりするかも http://mevius.5ch.net/test/read.cgi/tech/1478440682/939
940: デフォルトの名無しさん [sage] 2017/07/13(木) 21:06:57.04 ID:a0isPZOF >>937 = {'\0'};のタイプミスだよね? http://mevius.5ch.net/test/read.cgi/tech/1478440682/940
941: デフォルトの名無しさん [sage] 2017/07/13(木) 21:23:18.88 ID:lX8cJUTX >>940 タイプミスじゃなくて文字化けした スマホから見ると、? が◆の中に書かれた文字になってる http://mevius.5ch.net/test/read.cgi/tech/1478440682/941
942: デフォルトの名無しさん [sage] 2017/07/13(木) 23:03:34.21 ID:xdHlDIka プログラム終了にexit 0とreturn 0がどう違いますか? http://mevius.5ch.net/test/read.cgi/tech/1478440682/942
943: はちみつ餃子 ◆8X2XSCHEME [sage] 2017/07/13(木) 23:59:30.53 ID:anRp6w5D >>942 違わない。 main 内の return は exit と同じ。 http://mevius.5ch.net/test/read.cgi/tech/1478440682/943
944: デフォルトの名無しさん [sage] 2017/07/14(金) 19:19:48.00 ID:TW7O0pB9 というタワゴトで他人を陥れるのであった http://mevius.5ch.net/test/read.cgi/tech/1478440682/944
945: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2017/07/14(金) 19:26:30.76 ID:RoIBY40S exitは死のトラクターが働かない http://mevius.5ch.net/test/read.cgi/tech/1478440682/945
946: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2017/07/14(金) 19:32:27.26 ID:RoIBY40S 異常終了以外でexitを使うヤツは素人 http://mevius.5ch.net/test/read.cgi/tech/1478440682/946
947: デフォルトの名無しさん [sage] 2017/07/14(金) 20:20:31.05 ID:8ghhANnS えっ mainのreturnでint値返すのはexitをその返り値で呼ぶのと全く等価でしょ? 少なくとも現行のC,C++規格では等価と書いてあるけど現実の実装ではそうなってないってこと? http://mevius.5ch.net/test/read.cgi/tech/1478440682/947
948: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2017/07/14(金) 20:52:35.05 ID:RoIBY40S #include <iostream> #include <cstdlib> struct A { ~A() { std::cout << "OK" << std::endl; } }; int main(void) { A a; std::exit(-1); } http://mevius.5ch.net/test/read.cgi/tech/1478440682/948
949: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2017/07/14(金) 20:55:56.83 ID:RoIBY40S >>947 どこに書いてあったか? 苦情入れるぞ。 http://mevius.5ch.net/test/read.cgi/tech/1478440682/949
950: デフォルトの名無しさん [sage] 2017/07/14(金) 21:04:08.43 ID:TW7O0pB9 今日の>>945は健常者 後始末される例外ケースについて触れていたら完璧だった http://mevius.5ch.net/test/read.cgi/tech/1478440682/950
951: デフォルトの名無しさん [sage] 2017/07/14(金) 21:06:50.82 ID:VdC9hBdZ atexit で後始末回収機構走らないの? http://mevius.5ch.net/test/read.cgi/tech/1478440682/951
952: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2017/07/14(金) 21:39:46.62 ID:RoIBY40S >>947 どこに書いてあった? http://mevius.5ch.net/test/read.cgi/tech/1478440682/952
953: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2017/07/14(金) 21:46:17.67 ID:RoIBY40S atexitはマニュアルに書いてある通りだから、ここでいちいち説明する必要はない。 http://mevius.5ch.net/test/read.cgi/tech/1478440682/953
954: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2017/07/14(金) 21:53:53.48 ID:RoIBY40S マニュアルこそが聖書。マニュアルを読まない奴等はノンプレイヤー。 http://mevius.5ch.net/test/read.cgi/tech/1478440682/954
955: デフォルトの名無しさん [sage] 2017/07/14(金) 22:54:13.51 ID:RlDfzlps つまりexit()はバカ発見器ってこと? http://mevius.5ch.net/test/read.cgi/tech/1478440682/955
956: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2017/07/14(金) 23:01:28.54 ID:RoIBY40S C++でexit使うぐらいなら、代わりにC++例外を使った方がいいよ。デバッグしやすいし。 http://mevius.5ch.net/test/read.cgi/tech/1478440682/956
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 46 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.020s