- 1 名前:デフォルトの名無しさん mailto:sage [2012/09/30(日) 17:53:36.53 ]
- C言語の入門者向け解説スレッドです。
★前スレ C言語なら俺に聞け(入門編)Part 107 toro.2ch.net/test/read.cgi/tech/1347156509/ ★過去スレ makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000 ★教えて欲しいのではなく宿題を丸投げしたいだけなら ↓宿題スレ↓へ行ってください。 C/C++の宿題片付けます 159代目 toro.2ch.net/test/read.cgi/tech/1342966104/ ★C++言語については避けてください。C++対応明記スレへどうぞ。 ★分からない事をなるべく詳しく書いて下さい。 ★ソースコードを晒すと答えやすくなるかもしれません。 # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること。 # サイズが大きい場合はアップローダ等を利用してください。 codepad.org/ ideone.com/ ★開発環境や動作環境も晒すと答えが早いかもしれません。 ★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。 ★◆QZaw55cn4cは発言禁止です。トリップを隠してもダメです。
- 69 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:09:35.82 ]
- 正負の数での新たな釣りか?
マァよくもこんなに思いつくもんだ とてつもない発想力だ 褒めてやろう
- 70 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:10:25.13 ]
- C言語を一通りやってたら基本情報処理合格できるかな?
データ構造アルゴリズム関連もあるんだが。
- 71 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:18:22.80 ]
- 無理だろうね
C言語の試験じゃないから
- 72 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:21:56.55 ]
- >>71
そうですか でも試験自体簡単ですかね?プログラム組める力は必要ですか?
- 73 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:24:10.97 ]
- >>72
www.jitec.ipa.go.jp/1_13download/hanni_kaitei.pdf 選択なのでどちらかといえば簡単かと 適当に○つけるだけだからね
- 74 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:26:14.02 ]
- >>73
経営戦略 法務 レベル高杉
- 75 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:27:13.57 ]
- >>73
範囲広すぎだろ 俺は受けたことないがCPUやネットワークって規格に依存した知識とか は必要ないわけ?
- 76 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:30:55.42 ]
- >>62
ideone.com/APbyE お前は何を言っているのだ?
- 77 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:31:04.25 ]
- www.jitec.ipa.go.jp/1_04hanni_sukiru/_index_hanni_skill.html
下に過去問あるから試してみては? ただし反吐してもおれは晩飯代払わないからな
- 78 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:36:35.00 ]
- 高校生が応用ですら合格できるのを見たら
基本なら参考書見てたら余裕なんじゃない? 基本でも就職の時「へぇ、すごいな」ってなるのが良いよね ITストラテジストだっけ?あれはさすがに難しいいと思うが
- 79 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:39:50.33 ]
- 今応用の勉強してるが基本のほうが難しかった気がしないでもない
- 80 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:40:11.74 ]
- わたしはインディアンであるが、
インディアンは嘘を付かない というのは嘘である
- 81 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:43:26.70 ]
- / / / | /| /:::/:.:.:.:.:.:.:|::::::
/ 〃 i .::| /:.:.| |::l::|:.:.:.:.:.:.:.:|:::::: ,゙ /| | .:::|. \|:.:.:.:| |::l::|/:.:.:.:.:.:j/:: ! ,' ! ::| ::::|!. ,ィ|≧ゝl、_.;|::ィ|/_:._/ィllヘ l ,' │ ::|:.. ::::|く/ {ひlll|::|ヾ|:.N:.::´〃ひlllリ:: 嘘だッ!!! ヾ '、 |\ ::::|:.\\こソ:.:.:.:.:.:.:.:.:.:、、\こソ '、 :| \ :::\:.:._,、__彡 _' -─ 、`゙ー= ヾ、/.::>:、:;ヽ、__ /ーァ''"´ ̄ ヽ / .::::::::::::::::ヘ ̄ {|::/ } /...::::::::::::::::::::::::::\ V j}
- 82 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 20:54:45.00 ]
- 基本情報処理 ≒ IT土方免許
- 83 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 21:07:49.54 ]
- 基本情報処理 ≒ IT奴隷証明書
- 84 名前:デフォルトの名無しさん [2012/10/01(月) 21:12:58.03 ]
- どんなに難しくしても
習わなかったことがわかる人かどうかは あのやり方では判定できないからな
- 85 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 21:15:39.49 ]
- 基本は何とかして取りたいけど、IT企業へ就職したいからじゃなくて
何か学生時代やったことアピールするためなんだけどな
- 86 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 21:24:17.82 ]
- 会社はIT企業じゃないけどexcelとかwordが分かる人は重宝するらしい。
工場だけどね。
- 87 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 21:27:48.87 ]
- えーマジIT奴隷!?
キモーイ IT奴隷が許されるのは小学生までだよねー キャハハ ハハハハ
- 88 名前:デフォルトの名無しさん [2012/10/01(月) 22:17:11.35 ]
- 思ったんだけど四則演算の結果って大容量レジスタに記憶してればいいんじゃないかな?
複雑な計算も、処理じゃなくてアクセスだけで済む。 例えば9234234234235132×342532423423523=2723423532452345234もわざわざ コンピュータでするんだろ?最初から記憶しとけばいいじゃん。
- 89 名前:88 [2012/10/01(月) 22:18:31.49 ]
- そうすればALUも必要無いしCPUの負担も減らせる
- 90 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 22:23:19.77 ]
- >>88
そうだな はるか未来ではそうなってるかもしれないな
- 91 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 22:24:57.92 ]
- 何故はるか未来?
- 92 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 22:29:44.52 ]
- 全ての計算結果を納めておくには
無限のHDDと無限のアドレス処理が必要 しかも一種類の無限だけじゃない 2種類の無限を扱える記憶媒体が必要
- 93 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/10/01(月) 22:30:48.36 ]
- 俺も昔考えたことがあるが、記憶容量の問題がある。高速アクセスできる容量無限大の記憶装置がないとダメ。
- 94 名前:デフォルトの名無しさん [2012/10/01(月) 22:34:01.74 ]
- 膨大な計算もハッシュで短くできないか?
- 95 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/10/01(月) 22:36:23.53 ]
- 一部の計算結果を記憶する技法ならパスワード解析で使われてるみたい。
- 96 名前:デフォルトの名無しさん mailto:sage [2012/10/01(月) 22:44:40.07 ]
- 多対1の写像だろうし元には復元できんよね
参照先を求めるのにハッシュ経由である程度刈り込むことはできたとしても
- 97 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 03:58:02.86 ]
- アドレス演算するより掛け算したほうが早いなw
- 98 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 04:14:44.86 ]
- そんなバカなアイデア、今も昔も考えたこともないわ
- 99 名前:デフォルトの名無しさん mailto:ID導入賛成ノシ [2012/10/02(火) 04:54:48.35 ]
- 高速化のために、テーブルをつかう。その発想でしょ
- 100 名前:デフォルトの名無しさん mailto:ID導入賛成ノシ [2012/10/02(火) 04:57:23.26 ]
- 「角度 をキーとしたテーブル引きで高速化しよう」
三角関数のテーブル引きによる高速化 mibai.tec.u-ryukyu.ac.jp/~oshiro/Doc/misc/SinCos_Table.html
- 101 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 05:18:16.04 ]
- いやテーブルなんて掛け算回路で使ってるし、分かってるよ
ただ四則演算を全部テーブル参照にするってとこが
- 102 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 06:07:13.41 ]
- >>100
こんな程度のLUTで速くなるとか思い込まないように 自己責任でコピして貼った ideone.com/rG1D8 ちなみに手元: gcc 4.7.1 、-O3 -lm SinCos_Table:100000 Time benchmark: cos(), Cos() cos:0.50sec Cos:0.81sec 環境にもよるってことで、LUTだから速いというのはその環境でという条件付きだよ
- 103 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 07:24:34.34 ]
- >>96
ゲーデル数化すれば理論的には一対一対応にできるが、 非現実的に巨大な、ランダムアクセスできるメモリが必要になる
- 104 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 10:07:57.39 ]
- >>102
テーブル使うのに浮動小数点と整数の変換挟むのは無いわ
- 105 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 11:14:51.97 ]
- 配列の添字に浮動小数点でインデックスできると思ってるバカ発見、ではないよね?
- 106 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 11:51:08.13 ]
- intにキャストすればよい
- 107 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 12:22:10.31 ]
- 割り算をROMに入れとくってのは、よくやってる。
- 108 名前:デフォルトの名無しさん mailto:sage [2012/10/02(火) 12:45:05.35 ]
- 割り算は遅いからな。
- 109 名前:デフォルトの名無しさん mailto:sage [2012/10/03(水) 06:48:57.15 ]
- VCでプログラミングの勉強するときにファイル名をmain.cにしてるわけだが、
プロジェクト名をかな文字にしているせいでたまにまいん。cって打ってしまうことがある。 その度にまいんちゃんを思い出してしまうんだが何とかならないのだろうか?
- 110 名前:デフォルトの名無しさん mailto:sage [2012/10/03(水) 06:54:20.70 ]
- >>109間違えた。
VCでプログラミングの勉強するときにファイル名をmain.cにしてるわけだが、 プロジェクト名をローマ字打ちの全角文字にしてるために、 英数字に戻すのを忘れてたまに”まいん。c”って打ってしまうことがある。 その度にまいんちゃんを思い出してしまうんだが何とかならないのだろうか?
- 111 名前:デフォルトの名無しさん mailto:sage [2012/10/03(水) 06:58:24.32 ]
- WinXPだとそうなるバグ(仕様?)
Win7だとIMEが勝手にONになる事はない
- 112 名前:デフォルトの名無しさん mailto:sage [2012/10/03(水) 09:51:14.57 ]
- まいんちゃんも成長しすぎてもう賞味期限切れだな
- 113 名前:デフォルトの名無しさん mailto:sage [2012/10/03(水) 21:29:36.37 ]
- >>110
win+r > notepad > main.cを入力 > ctrl+a > 日本語入力に変更 > ctrl + f10 > w > まいん。cで登録 要するにIMEの単語登録しとけっていう話 IDE知らなかった時分はpfをprintf("とか常用関数の入力補完用として登録しまくってた思い出
- 114 名前:デフォルトの名無しさん [2012/10/03(水) 23:46:35.18 ]
- int c;
char a[1]; char b[1]; a[0]='d'; b[0]='d'; c=strcmp(a,b); printf("%d\n",c); 結果が0にならないのですがどうしてでしょう? 一致で0のはずですが.....
- 115 名前:デフォルトの名無しさん mailto:sage [2012/10/03(水) 23:59:57.24 ]
- 文字列の終端を意味する \0 が無いから
char a[2], b[2]; a[0] = 'd'; a[1] = '\0'; b[0] = 'd'; b[1] = '\0';
- 116 名前:デフォルトの名無しさん [2012/10/04(木) 00:04:27.59 ]
- >>115
なるほど \0は必要なんですね ありがとう
- 117 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:11:41.89 ]
- >>115
\0を代入せずとも 自動的に残りの要素が\0になっているようにするにはどうすればいいでしょう? a[3]; a[0]='x'; a[1]='y'; としてもa[2]は不定値のままです。
- 118 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:12:32.23 ]
- 宣言時に0を入れとくしか
- 119 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:17:47.58 ]
- calloc
- 120 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:18:36.19 ]
- >>118
for() { a[i]=\0 } ということですか?
- 121 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:21:19.16 ]
- char a[2] = {0};
- 122 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:21:20.15 ]
- >>118
strcpyの場合 0になりましたけどstrcpyは有効でしょうか? strcpy(a,"str") s (b,""); strcmp0になりました。
- 123 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:22:03.14 ]
- 何時代入の終わりが来るか知りようが無いので
・初期化で全要素に対して 0 を埋める int a[3] = { 0 }; ( int a[3] = { }; はセーフだっけ? ・許されるのならば代入をやめ、初期化で全てを終わらせる int a[] = "xy";
- 124 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:25:36.23 ]
- strcpyは\0までコピーする仕様になってる
strlenは\0までカウントしないんだよな 舐めやがって
- 125 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:27:42.25 ]
- 文字列 "str" は 4要素 { 's', 't', 'r', '\0' } 持ってます
strcpy は \0 を含めて複写します。 故に strcpy(a, "str") を行う場合 a は最低限 4個入る器が必要です
- 126 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:29:54.29 ]
- char str = "abc";
char* p = malloc(strlen(str)); strcpy(p, abc); // <= メモリ破壊 舐めやがって
- 127 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:30:30.21 ]
- strcpy(p, str);
だったは
- 128 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:30:30.92 ]
- >>125
\0以降は不定でもstrcpyに影響はでないですかね?
- 129 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:31:33.23 ]
- ライブラリの仕様を調べるのもプログラマの仕事だ
- 130 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:33:08.24 ]
- >>128
文字列関数は \0 で打ち切るので、それ以降の事情はしったこっちゃないことになっています。 逆に言うと \0 が来ないと打ち切れないので、どうなるかは判りません
- 131 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 00:48:27.20 ]
- #define BUFFER_SIZE 20
#include <stdio.h> #include <string.h> char c[BUFFER_SIZE]; int main(void) { char d[BUFFER_SIZE]; int i; for(i = 0; i < BUFFER_SIZE; i++) { printf("%d", c[i]); } putchar('\n'); memset(d, 0, sizeof(d) ); for(i = 0; i < BUFFER_SIZE; i++) { printf("%d", d[i]); } return 0; }
- 132 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 09:06:45.68 ]
- 未初期化のスタック覗いたところで所詮環境依存だから意味ない
むしろ誤解を招くだけ
- 133 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 09:21:07.53 ]
- >>132
ドンマイ
- 134 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 09:23:45.54 ]
- >>133
理解できないなら引っ込んでなよ。
- 135 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 14:18:47.64 ]
- 未初期化のスタックは覗いてないような気がする
- 136 名前:デフォルトの名無しさん [2012/10/04(木) 15:08:57.23 ]
- だよな
- 137 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 16:09:48.52 ]
- だからドンマイって言ったのに・・・
気づかないとは思わなかった
- 138 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 16:27:25.83 ]
- それはいいとしても>>131が何を示したかったのか分からない
- 139 名前: ◆QZaw55cn4c mailto:sage [2012/10/04(木) 18:44:55.90 ]
- >>132
未初期化?どこに?どんとまいんど
- 140 名前:デフォルトの名無しさん [2012/10/04(木) 20:08:26.79 ]
- Cで
int x; x=124; の場合 同じ大域領域の同じブースに"x"と"124"が格納されているわけ? javaだと 参照値と実体は別だと聞きました。
- 141 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 20:12:20.09 ]
- ブース?
- 142 名前:デフォルトの名無しさん [2012/10/04(木) 20:15:18.44 ]
- >>141
メモリ上の区画という意味です
- 143 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 20:20:59.16 ]
- へえ
- 144 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 20:42:11.50 ]
- メモリ上の区画の事を
お前以外の全員は何て呼んでると思う?
- 145 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/10/04(木) 20:55:42.81 ]
- >>140
"x"は格納されていません。
- 146 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 20:56:02.44 ]
- ゴミ箱だっていう人もいるけど、俺は宝箱って呼んでる。
- 147 名前:デフォルトの名無しさん [2012/10/04(木) 20:59:33.32 ]
- >>144
メモリーポジションブロック
- 148 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 21:11:07.85 ]
- >>140
int x; /* 大域領域にintサイズの領域を確保し、xという名前で参照する事を宣言する。 x=124; /* 上で宣言された領域をintとして参照し、そこに124を格納する。 */
- 149 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 21:17:19.35 ]
- >>140
Javaでも、プリミティブ型は、
- 150 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 21:23:11.81 ]
- int x; // スタックを確保してxというラベルで参照する
x=124; // Define Double wordで用意した124をスタック上のxに転記する
- 151 名前:デフォルトの名無しさん [2012/10/04(木) 22:09:58.95 ]
- >>150
xというラベルで参照する? ということはC言語のint 変数; は参照型変数?
- 152 名前:デフォルトの名無しさん [2012/10/04(木) 22:15:32.54 ]
- うん
- 153 名前:デフォルトの名無しさん [2012/10/04(木) 22:18:58.05 ]
- intは基本型って書いてあるけど?
参照型でもあるの? >>152 君馬鹿にハイハイって合わせるために そうだねーとか、言ってる人でしょ? マジレス希望なんで.....
- 154 名前:デフォルトの名無しさん [2012/10/04(木) 22:21:57.41 ]
- intは基本型であって、自動変数の場合にスタックを参照するが、
参照型とは言わないし、他の変数の参照にはならない。
- 155 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 22:22:44.93 ]
- ソース上でxというラベルで参照できなきゃ何で参照するのかと
参照できたらなんでも参照型なのかと
- 156 名前:デフォルトの名無しさん [2012/10/04(木) 22:23:53.45 ]
- 自動変数にラベルなんか貼らねえよぼけ
main() { int x; } shit() { int x; } これだけで破綻するコンパイラがあったら PC をビルごと爆破しろ
- 157 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 22:24:16.82 ]
- 参照型渡したら参照渡しって言い出す人達ってきっと……
- 158 名前:デフォルトの名無しさん [2012/10/04(木) 22:28:48.06 ]
- C言語では表にスタックも参照型も出てこない。
- 159 名前:デフォルトの名無しさん [2012/10/04(木) 22:30:10.98 ]
- 先生、参照渡しとアドレスの値渡しの違いがわかりません
- 160 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 22:34:40.47 ]
- 引数として渡された値(アドレスだったらアドレスそのもの、アドレスの参照先ではなく)を
書き換えたら呼び出し元に反映されるのが参照渡し、 書き換えても呼び出し元に反映されないのが値渡し。 C言語には値渡ししかない。
- 161 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 22:35:06.34 ]
- 浮動小数点数の仕様がIEEE754の環境での浮動小数点数のデータ
それ以外の仕様、たとえばIBM方式での環境での浮動小数点数のデータ これらをファイルで読み書きしたりデータ通信する際に 両者の間で相互に表現できない数値は存在するのか もしあるのならその数値の扱いをどうするべきか
- 162 名前:デフォルトの名無しさん [2012/10/04(木) 22:35:24.62 ]
- >>155
すごい説得力... 確かにそうですよね 1+1=2だって =があって成り立つ式ですもんね
- 163 名前:デフォルトの名無しさん [2012/10/04(木) 22:38:02.32 ]
- >>162
成り立たねえよアフォ
- 164 名前:デフォルトの名無しさん [2012/10/04(木) 22:40:12.96 ]
- >>160
いやポインタは参照渡しでしょ 例えばint *a; int *b; *a=30 b=&a; とかは?
- 165 名前:デフォルトの名無しさん mailto:sage [2012/10/04(木) 22:42:01.91 ]
- ja.wikipedia.org/wiki/%E5%BC%95%E6%95%B0#.E3.83.9D.E3.82.A4.E3.83.B3.E3.82.BF.E6.B8.A1.E3.81.97
- 166 名前:デフォルトの名無しさん [2012/10/04(木) 22:44:11.37 ]
- wisdom.sakura.ne.jp/programming/cs/cs20.html
- 167 名前:デフォルトの名無しさん [2012/10/04(木) 22:44:38.38 ]
- >>164
おまえさ、不定・・ いやコメントする気さえ失せた
- 168 名前:デフォルトの名無しさん [2012/10/04(木) 22:44:40.60 ]
- >>164
それは、ポインタの逆参照に代入している。 参照渡しとは言わない。 そもそもXX渡しって関数に引数与えることでしょ。
- 169 名前:デフォルトの名無しさん [2012/10/04(木) 22:45:43.53 ]
- >>168
言っている意味が分からない..
|

|