- 1 名前:デフォルトの名無しさん [2009/10/29(木) 21:10:18 BE:227211146-DIA(352353)]
- C言語の*入門者*向け解説スレッドです。
初心者、初級者の方は他の質問スレのほうが良いかもしれません。 教えて欲しいのではなく宿題を丸投げしたいだけなら ↓宿題スレ↓へ行ってください。 C/C++の宿題片付けます 131代目 pc12.2ch.net/test/read.cgi/tech/1255709298/ ・C++言語はスレ違いです。 ・分からない事をなるべく詳しく書いて下さい。 ・ソースコードを晒すと答えやすくなるかもしれません。 # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること # サイズが大きい場合は宿題スレのアップローダ等を利用してください ・開発環境や動作環境も晒すと答えが早いかもしれません。 ・質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。 前スレ C言語なら俺に聞け(入門篇) Part 54 pc12.2ch.net/test/read.cgi/tech/1254829314/ 過去スレ 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
- 2 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 21:25:05 ]
- ぬるぽ
- 3 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 21:51:20 ]
- NULL pointer exeption
- 4 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 22:41:25 ]
- C++がスレ違いというのは言い過ぎ
- 5 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 23:04:44 ]
- いいえスレ違いです
- 6 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 23:05:22 ]
- 気に入らないならC/C++室スレにでも行ってください
- 7 名前:>1乙 mailto:sage [2009/10/29(木) 23:26:00 ]
- C言語の*入門者*向け解説スレッドです。
初心者、初級者の方は他の質問スレのほうが良いかもしれません。 ・C++言語はスレ違いです。 ・分からない事をなるべく詳しく書いて下さい。 ・ソースコードを晒すと答えやすくなるかもしれません。 # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること、サイズが大きい場合は宿題スレのアップローダ等を利用してください ・開発環境や動作環境も晒すと答えが早いかもしれません。 【初心者歓迎】C/C++室 Ver.69【環境依存OK】pc12.2ch.net/test/read.cgi/tech/1256022655/ ・質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。 教えて欲しいのではなく宿題を丸投げしたいだけなら ↓宿題スレ↓へ行ってください。 C/C++の宿題片付けます 131代目 pc12.2ch.net/test/read.cgi/tech/1255709298/ [ 前スレ ] C言語なら俺に聞け(入門篇) Part 54 pc12.2ch.net/test/read.cgi/tech/1254829314/ [ 過去スレ ] 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専用スレ Part134 pc12.2ch.net/test/read.cgi/tech/1246115922/ C/C++小心者スレッドPart1 pc12.2ch.net/test/read.cgi/tech/1186262298/ [ 雑談スレは雑談スレで ] malloc pc12.2ch.net/test/read.cgi/tech/1228462009/ break文の是非について pc12.2ch.net/test/read.cgi/tech/1245658400/ ポインタ死ねよ。 pc12.2ch.net/test/read.cgi/tech/1171172537/ Cでプログラム言語は完成した pc12.2ch.net/test/read.cgi/tech/1218012085/ C言語を始めるのに良いサイトってありますか? pc12.2ch.net/test/read.cgi/tech/1169824084/ C/C++ Coding Style Thread pc12.2ch.net/test/read.cgi/tech/1096687703/ C言語は関数ができなくても、理解可能か? pc12.2ch.net/test/read.cgi/tech/1090089115/ cとc++どっちがいいの? pc12.2ch.net/test/read.cgi/tech/1245506307/ Vim vs Emacs Part2 pc12.2ch.net/test/read.cgi/tech/1200654758/
- 8 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 23:45:35 ]
- テンプレ追加キボンヌ
↓ ここではC++言語は別言語と考えますので、スレ違いになります。 ただしC++言語のコード(拡張子=.cpp)をリネームしてC言語の コードとしてコンパイルできる場合はC言語のコードとみなします。
- 9 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 00:19:07 ]
- .cpp
.C .cc
- 10 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 01:09:53 ]
- Linuxで作成した拡張子.cのファイルをウィンドウズで開くと
文字化けして見れないんですがウィンドウズ上で見る方法ないですか?
- 11 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 01:12:32 ]
- >>10
ブラウザにドロップしてみる
- 12 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 01:18:52 ]
- >>11
できました!こんな簡単な方法があったとは・・・
- 13 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 01:20:08 ]
- 偽の条件式ってのは整数の0と同等に扱っていいんでしょうか?
それと、真の場合は1とは限らないんでしょうか int x = ( 1+2 == 2 ); これはint x = 0と同じでいいのか、 int x = ( 1+2 == 3 ); これだと常にx = 1になるのか、教えてください
- 14 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 01:21:28 ]
- >int x = ( 1+2 == 2 ); これはint x = 0と同じでいいのか、
いい >int x = ( 1+2 == 3 ); これだと常にx = 1になるのか、教えてください なる
- 15 名前:13 mailto:sage [2009/10/30(金) 01:25:30 ]
- どうもありがとうございました
だとすると、今まで簡単に書ける式をわざわざif文とか必要ない変数とか宣言して書いてました
- 16 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 09:53:57 ]
- 自信がない場合は条件演算子を使うのも一つの手です。
曰く、 int x = (1 + 2 == 2) ? 1 : 0; int y = (1 + 2 == 3) ? 1 : 0; 尤も、boolean型を作ってしまう手もありますが。 そもそもc99では標準で使えることですし。 stdbool.hが見つからないならこんな感じで作れます。 typedef enum {false, true} bool; bool x = 1 + 2 == 2; bool y = 1 + 2 == 3;
- 17 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 12:18:21 ]
- >>16
下のほうはものすごく気持ち悪い
- 18 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 13:00:11 ]
- そもそもそんなの使う場面が無い。
- 19 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 21:21:24 ]
- double **dSData = NULL;
dSData = new double*[100]; for(int i=0; i<100; i++){ dSData[i] = new double[100]; } という感じで動的な二次元配列を作ったのですが、 sizeof(dSmokeData[0]); とやるのと double dTest[100]; sizeof(dTest); とやるのとでは、sizeofの結果が違うのですが、なぜでしょうか?
- 20 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 21:23:41 ]
- 括弧つけんなボケ
- 21 名前:19 mailto:sage [2009/10/30(金) 21:27:03 ]
- 訂正
sizeof(dSmokeData[0]); ↓ sizeof(dSData[0]);
- 22 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 21:31:25 ]
- >>19
dSData の型をみるよろし
- 23 名前:19 mailto:sage [2009/10/30(金) 21:36:18 ]
- >>22
確かに型は違っています。 dSDataを使って double dTest[100]; sizeof(dTest); とした状態と同じ結果を表すにはどうしたらよいでしょうか?
- 24 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 21:39:29 ]
- >>23
double (*dSData)[100] = NULL;
- 25 名前:19 mailto:sage [2009/10/30(金) 21:43:34 ]
- >>24
double **dSData = NULL; ではできないんでしょうか? dSDataはグローバル変数で、要素の数はソースの途中で決まるため、宣言時には指定できないのです。。
- 26 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 21:48:19 ]
- >>25
new とか使うってことは C++ でしょ? STL の vector 使えばいいよ
- 27 名前:19 mailto:sage [2009/10/30(金) 21:57:04 ]
- >>26
vector<int> v(100); sizeof(v); double dTest[100]; sizeof(dTest); sizeof(v);とsizeof(dTest);の結果がやはり違います。
- 28 名前:19 mailto:sage [2009/10/30(金) 21:58:28 ]
- 訂正
vector<int> v(100); ↓ vector<double> v(100);
- 29 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 21:59:54 ]
- 括弧つけるなアホ
- 30 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 22:01:57 ]
- int i;
i = sizeof (int); i = sizeof i; だっけか?
- 31 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 22:03:51 ]
- >>27
なんで sizeof に拘るのさ?
- 32 名前:19 mailto:sage [2009/10/30(金) 22:06:10 ]
- >>31
memcpyを使っているので、、、
- 33 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 22:12:35 ]
- >>32
.size() で大きさは分かる が、古いコンパイラだと vector の中身が連続領域じゃない可能性もある
- 34 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 22:16:09 ]
- え?ベクターって実装上連続であること保障されてないの?
- 35 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 22:18:31 ]
- プゲラ
- 36 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 22:20:59 ]
- >>34
古い仕様書には明記されていなかったから 実装がどうなっているかはコンパイラ次第とかなんとか
- 37 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 22:36:28 ]
- C++厨は巣に帰れ
- 38 名前:デフォルトの名無しさん mailto:sage [2009/10/30(金) 22:51:59 ]
- 自己参照構造体使って自作するのがC使い
- 39 名前:19 mailto:sage [2009/10/30(金) 23:05:41 ]
- double dTest1[100][100];
sizeof(dTest1[0]); と double dTest2[100]; sizeof(dTest2); とやっても sizeofの結果が異なります。。
- 40 名前:19 mailto:sage [2009/10/30(金) 23:30:45 ]
- ↓
誤爆です。間違ってました。合ってます。
- 41 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 03:42:45 ]
- それは誤爆といわない
- 42 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 07:06:03 ]
- 要素数はわかってるんだから変数に保存しておけばいいだけだろ
sizeofにこだわる必要はない
- 43 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 07:10:58 ]
- sizeofの値はコンパイル時に決まってないとだめだから実行時にしか決まらない値を得られるはずがない
関数じゃないんだからね
- 44 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 11:32:35 ]
- strcpy(a, (char)crypt("hogehoge", "EV"));
これって何かおかしい?
- 45 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 11:36:43 ]
- なんでcharにキャストしてるの?
- 46 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 11:47:54 ]
- >>45
キャストされてないってコンパイラに怒られたから test.c:11: warning: passing arg 2 of `strcpy' makes pointer from integer without a cast
- 47 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 12:14:27 ]
- >>46
crypt.hをインクルードしてないだろ。
- 48 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 12:23:03 ]
- >>47
#define _XOPEN_SOURCE #include <stdio.h> #include <string.h> #include <unistd.h> int main() { char a[100]; strcpy(a, (char)crypt("hogehoge", "EV")); printf("%s", a); return 0; } これで問題ないはずなんだけど一応全文を
- 49 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 13:20:14 ]
- キャストは(const char *)でしょ
- 50 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 13:53:01 ]
- >>49
ありがとうございます とりあえず生成できるようになったのはいいけど結果が2chと食い違ってて泣いた でもage.s22.xrea.com/talk2ch/trip_new.txtの例どうりにやったらあってたんだよなぁ
- 51 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 14:01:18 ]
- tripkeyの文字コードが違うんじゃないの?
- 52 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 14:12:58 ]
- abcdではあってなくてkamiではあってるってのもどうなのかなぁ・・・
- 53 名前: ◆jG/Re6aTC. mailto:sage [2009/10/31(土) 14:22:50 ]
- test
- 54 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 14:52:17 ]
- >>46 見てなんでcharにキャストしたんだろうな
- 55 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 15:07:23 ]
- 馬○だから
- 56 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 15:10:42 ]
- 泣いて馬○を斬る。
- 57 名前:デフォルトの名無しさん [2009/11/01(日) 01:33:45 ]
- eclipseみたいにコードの誤りが表示されて、'{'に対応する'}'が
自動で生成されるシンプルなテキストエディタって何かないですか? IDEじゃなくて、コマンドプロンプトから実行できる、あと軽いやつで なにかおすすめはないですか?自分よくコードを打ち間違えるんすよ。
- 58 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 01:49:34 ]
- 間違えるな
- 59 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 01:55:57 ]
- emacs
- 60 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 02:11:05 ]
- IDE だってコマンドプロンプトから実行できるだろ。
- 61 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 02:46:48 ]
- vim
- 62 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 03:21:28 ]
- vim以外使ってる奴は糞。特に日本人しか使ってない秀丸とかいう糞エディタ使ってる奴はking of 糞。
- 63 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 03:46:14 ]
- vim(笑)
- 64 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 03:54:47 ]
- さすがにVi(中身はViMだろう)で開発はきつい
makeしたときのコンパイルエラーをちょろっと直す程度ならいいんだけどね ctagsですね、わかります
- 65 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 08:15:22 ]
- gedit最強
- 66 名前:デフォルトの名無しさん [2009/11/01(日) 09:12:45 ]
- 個人的な好き嫌いだけで糞とか決めつけてる奴って協調性低そう
客先から縛りをつけられたことがなくコードは常に1人で書いてるんだろうな
- 67 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 09:36:58 ]
- >>65
なかなか高機能だよな。
- 68 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 13:18:33 ]
- EDLIN 使えボケ
- 69 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 13:22:57 ]
- Cならvimが最強。
- 70 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 13:27:18 ]
- vimを使ってない奴は人生の貴重な時間を無駄に浪費している
- 71 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 13:28:24 ]
- 1バイト言語圏の人ならな。
- 72 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 13:28:41 ]
- Emacs じゃダメなの?
- 73 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 13:29:16 ]
- うわあ、かなり頭の悪いレスが続いてるなあ
いくら道具にこだわっても、そんな脳ミソじゃその人生自体無駄だろうね
- 74 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 13:51:32 ]
- あらゆるエディタを使い倒してきたエディタ神の俺だが、攻守最強形態vimだと悟りを得た。異論は認めないからそのつもりで。
- 75 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 14:07:04 ]
- これだから信者は。頭のネジが数えきれないくい抜けてるんだもん
こんなキチガイが回答者の質問スレとか始まる前から終わってるわ
- 76 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 14:16:43 ]
- 自分の頭の悪さを棚にあげて、人をキチガイとか煽ってるやつも消えてほしい。
- 77 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 14:18:44 ]
- そして、誰もいなくなった……
- 78 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 14:21:31 ]
- 棚上げって、俺の頭の良し悪しは今問題じゃないし。信者がうざいってだけ。
俺はどのエディタ以外は屑とか思ってないから。
- 79 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 14:34:05 ]
- 日本語でおk。
- 80 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 14:37:54 ]
- 読解力0なら2ちゃん見るなよ
- 81 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 14:42:11 ]
- emacsはctrl-N, ctrl-P, ctrl-F, ctrl-Bの時点で糞。カスタマイズ前提の思想は受け入れられない。矢印キー移動のエディタも糞。ホームポジションから矢印キーに移動した時点で負け組みの証明をしている。
- 82 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 14:44:38 ]
- >>81
お前がそう思うんならそうなんだろう、お前ん中ではな
- 83 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 15:16:35 ]
- 統合環境でそれなりに満足してるおいらにはわかんねぇべぇ
- 84 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 15:31:25 ]
- 統合環境ってemacsのことだよね
- 85 名前:デフォルトの名無しさん [2009/11/01(日) 16:21:18 ]
- テキストエディタ使ってコマンドプロンプトからプログラム実行しようと
思ったけど、やっぱり果てしなく面倒くさい。 テキストエディタってどれも安っぽくて、萎えるし。 シンプルで高級感があるソフトないんですかー><1日で挫折しましたよー。 誰かIDEのおすすめを教えてください。ちなみにC言語を勉強してます。 無駄な機能を省いた使いやすいやつないですか?
- 86 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 16:24:44 ]
- IDEとテキストエディタは別物なんだけどな。そして大抵IDE付属のエディタは糞。
- 87 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 16:34:11 ]
- >>85
Turbo C++ 1.01
- 88 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 16:37:02 ]
- >>85
VisualStudio2008ExpressEdition
- 89 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 16:45:37 ]
- すいません他のスレにも質問したのですがブックマークしわすれてて、探したんですけど見つからないのでこのスレで質問させていただきます。
「14歳からはじめるC++」という本で勉強しているんですが、エラーでコンパイルできなくてこまっています。 BCC DeveloperでDXライブラリをインクルードする設定をしました。 #include"DXLib.h" int WINAPI WhnMain(HINSTANCE hi, HHNSTANCE hp, LPSTR lpC, int nC) { ChangeWindowMode(TRUE); if (DXLib_lnit() == -1)return(-1); WaitKey(); DXLib_End(); return(0); } 以上のソースをコンパイルすると エラー E2268 〜 6:未定議の関数'DXLIb_lnit' 〜 エラー E2268 〜 8:未定議の関数'DXLIb_End' 〜 とエラーになります。かなりググッたんですがまったくわからず... どなたかアドバイスいただけませんか。 よろしくお願いします。
- 90 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 16:54:21 ]
- >>85
シンプルで高級感があるソフトを作れるようになるまでがんばれ! いい目標ができたじゃないか
- 91 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 16:55:22 ]
- >>89
あいとえるの区別をつけよう
- 92 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 16:59:44 ]
- 本当にエラーがその二つだけなら、
大文字と小文字間違えてるんだろ。 そも、誤字がひどいから明言は出来ない。
- 93 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 17:23:48 ]
- >>89
ソースとコンパイラの出力を全部そのままコピペして
- 94 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 17:31:15 ]
- >>89
コピペで聞きなおせつったの俺だ。どこだっけか。 ttp://homepage2.nifty.com/natupaji/DxLib/dxfunc.html ここみると、DXLib_Init → DxLib_Init だなXとxの違い。
- 95 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 17:32:53 ]
- って l と I もか、、、
- 96 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 17:33:54 ]
- i と I もだな
- 97 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 17:43:10 ]
- >>89
みなさんのおかげで解決できました。誤字でエラーだったんですね。xも小文字で。 丁重にみなさん教えていただき本当に本当にありがとうございました。 助かりました。
- 98 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 20:51:02 ]
- じゃんけんプログラムの次て、何作ったらいいんでしょうか?
初めてなので、なんていうか度合いがわかりません。簡単な計算プログラムしか作れない。。
- 99 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 20:58:24 ]
- >>98
ヒットアンドブロー(マスターマインド)とか呼ばれる数当てゲーム
- 100 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 21:25:29 ]
- 頭こんがらがってきたのですが
例えば int i = 8;で char型のポインタにint型のiを代入したいんですが 上手くいきません どうすればいいでしょうか?
- 101 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 21:29:16 ]
- やりたいことは
int i = 8; char* p = (char*)i; でいいの?
|

|