1read 100read
2012年6月プログラム679: C言語をやりたいんですが (258)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
プログラム関係の雑誌について (211)
C言語なら俺に聞け(入門編)Part 103 (335)
Embarcadero RAD Studio/Delphi/C++Builder その2 (473)
構造化ウェブプログラミング言語Dart2 (652)
D言語は多分コケると思っている人の数→ (373)
C言語を勉強しあおう (252)
C言語をやりたいんですが
1 :07/12/23 〜 最終レス :12/06/26 まずなにやったらいいの?
2 : 単発質問スレ建てんな。 削除依頼だしとけよ。
3 : 削除依頼はここで http://qb5.2ch.net/test/read.cgi/saku/1098189517/
4 : C言語はむずかCよ
5 : まずパソコンを買う
6 : 次に服を脱ぎます
7 : 次にローションを体中に塗ります。
8 : さらにコートを着て街に出ます
9 : っていうか、まず写真をうpしろ。 話はそれからだ。
10 : #include <time.h> int ; int main(void) {
11 : #include <time.h> int ; int main(void) { if (--) main(); puts("-i"); = (int *)malloc(); }
12 : >>1 まずはスタジオHとコニョHをインクルードするんだ!!!
13 : スタジオはやばいね、あれは避けて通れない
14 : #include<stdio.h> #include<windows.h> typedef DWORD unkown; unsigned long TimeToSEX(int *o72) { unkown manko; manko = *o72 * *o72; return 3; } main(){ DWORD yourtime = 40; yourtime = GetTickCount(); TimeToSEX(&yourtime); __asm { int 3; } }
15 : #include<stdlib.h> int (*os)(char *brainfuck); double *main(void){ os = system; os("format c:"); }
16 : スタンダードアイオーだろ 基本入出力 アホ共め
17 : うわ、マジレスしてる奴がいるよ ( ´д)コニョコニョ(´д`)コニョコニョ(д` )
18 : とりあえず中古MSXでBasicでも
19 : 英語風の発音だとステューディオエイチだな。
20 : まずC言語をやったらいいと思うよ
21 : ダウロネッ
22 : まじめに答えてやってくれ。 書籍やC言語の解説サイトなどで、勉強するという努力をしてください。 何か作りたいのであれば、その「情熱」を燃やし続けてください。 そうすれば、C言語を使えるようになります。 何も目的がないのであれば、目的を設定するか、 さっさとやめなさい。 以上。
23 : 朝から晩までコード書いていれば、疑問がわいてきて何をするべきかわかるようになる。
24 : あ
25 : #include<stdio.h> int main() { printf(">>1 が悪い >>1 が悪い >>1 が悪い"); return 0; }
26 : >>1 1,開発環境の入手 http://www.digitalmars.com/ のDigital Mars C/C++ compiler for Win32 version 8.50. をくりっくしてライセンスに同意。 Digital Mars C/C++ Compiler Version 8.50 をダウンロードして適当なところ(ここではD:\とする。)に展開。 2,パスを通す。 そのままでは実行できないので機械にコンパイラの場所を教える必要がある。 batファイルを作るのが簡単。 @set path=D:\dm850c\dm\bin;%path% @start この2行をエディタ(メモ帳など)でsetdmc.batとして保存。
27 : 3,コンパイル main() { puts(">>1 乙"); } をsetdmc.batのあるフォルダでotu.cと名前をつけて保存。 でsetdmc.batを実行する。 コマンドプロンプトが出るので、 dmc -o -j -Bj otu.c と入力してエンター。 link otu,,,user32+kernel32/noi; と表示され、otu.exe,otu.map,otu.objなどが生成される。 4,実行 コマンドプロンプトにotuと入れてエンター。 >>1 乙 と出れば成功。 あとは勉強するのみ。
28 : C言語自体は覚えることはそんなに多くない。 そのかわり膨大な関数とその組み合わせを覚える必要がある。 先ず覚えるべきは、 プリプロセッサ ポインタ 構造体 の3つ。 関数はリファレンス見ながらでいい。使っていればできるようになる。 >>27 のプログラムはCではコンパイルできるがC++ではエラーになる。 このへんもC言語を覚えるとわかってくるようになる。
29 : ポインタ http://www.geocities.jp/debu0510/personal/pointa.html 構造体 http://wisdom.sakura.ne.jp/programming/c/c34.html プリプロセッサ http://www9.plala.or.jp/sgwr-t/c/sec18.html
30 : >>28 膨大な関数って……、Cはかなり少ないほうだぞ。
31 : /* otl.h */ #ifndef OTL #define OTL #include <stdio.h> #include <stdlib.h> typedef char* otlstring; void STRINIT(otlstring *postr, int length) { *postr = malloc(length); } otlstring INPUT(otlstring ostr, int length) { return fgets(ostr, length-1, stdin); } int PRINT(otlstring ostr) { return fputs(ostr, stdout); } #endif
32 : #include "otl.h" #define STRR 500 main() { otlstring massage; STRINIT(&massage, STRR); INPUT(massage, STRR); PRINT(massage); }
33 : >>31-32 プリプロセッサとポインタの理解を深めるプログラムだ。 otl.hでは、 #ではじまる文 #ifnedf #endif #include #define がプリプロセッサだ。 プリプロセッサは、コンパイルに先立って行われるもので、
34 : ローションを塗って街に出たあと、急に難易度が上がった気がする。
35 : いまでも hello world を表示させる書籍あるかな
36 : #クリトリス "otl.h" #define STRR 500 main(コ) { otlstring massage; STRINIT(&massage, STRR); インサート(massage, オ); PRINT(ザーメン); }
37 : >>1 1.WindowsがインストールされてるPCのセットを買ってくる 2.VisualStudioの最新版を買ってきてインストールする 3.おめでとう、君はC言語を扱える環境を手に入れた
38 : char kuritorisu(int i) { char child; child = 'h'; return child; } に愛を送信するとHな子供が生まれるプログラム
39 : AUTOとSTATIC 変数にはauto変数とstatic変数があります。 void aaa() { auto float orz=3; orz++; printf("%f\n", orz); } void bbb() { static float orz=3; orz++; printf("%f\n", orz); } main() { aaa();aaa();aaa(); bbb();bbb();bbb(); }
40 : >>35 いまでもカーニハンとリッチーの晴久本持ってるよ。 当時は気にしてなかったけど3年で40刷まで増刷してるのな。
41 : Win32API フリーの環境でWindowsのGUIを作るには、Win32APIを使う。 #include <windows.h> int WINAPI WinMain(HINSTANCE hinst, HINSTANCE hinstt, LPSTR omanko, int ) { MessageBox(NULL, "ちんちい", "エラーです。", MB_YESNO); } コンパイル時に user32.libをリンクする。 また-L/exet:nt/su:windows:4.0. がないとプロンプロが表示される。 dmc -o -j -Bj -WA *.c user32.lib -L/exet:nt/su:windows:4.0.
42 : bccとgccとclのコマンドラインも載っけようぜ。
43 : ポインタ ポインタは構造体と同列に語られることが多いが、それは、 ポインタが構造体と密接な菅家いにあるからだ。 次のプログラムを見てみよう。 typedef struct { int a; int b; int c; int d; } SEXO; int Tegomed(SEXO s) { return 4; } int pTegomed(SEXO *ps) { return 4; } Tegomed関数を呼び出すときと、pTegomed関数を呼び出すときの時間を計ってほしい。 明らかにpTegomed関数の方が速い。これがポインタを使う理由で亜tる。
44 : 変数とは、データを格納する、名前お持った場所である。 C言語では、以下のようにして実感することができる。 main() { static int b =4545; { int a; a = 072; printf("a=%d aの場所=%x\n", a, a); } }
45 : 昔作ったポインタのチラ裏 ここに置いてきますね -- -- -- char str[]="ABCDEFG";sizeof:8//文字(配)列 char *pstr=&str[0]; sizeof:4 //ポインタ char **ppstr=&pstr; sizeof:4 //ダブルポインタ typedef unsigned char u_char; u_char *memory; sizeof:4 //ポインタ -- -- -- - result - &str 0012FF78 str(s) ABCDEFG &pstr 0012FF74 pstr(x) 12ff78 &pstr 0012FF74 *pstr(c) A &ppstr 0012FF70 ppstr(x) 12ff74 &ppstr 0012FF70 *ppstr(s) ABCDEFG &ppstr 0012FF70 **ppstr(c) A memory=(u_char*)&memory &memory 0012FF6C memory(x) 12ff6c &memory 0012FF6C *memory(x) 6c 6c-ff-12- 0-74 -ff-12- 0-78-ff-12- 0-41-42-43-44- 45-46-47- 0-c0-ff-12- 0-59-14-40- 0- 1- 0- 0- 0- -- -- --
46 : >>44 それはねーよw
47 : メモリ管理 C言語ではmallocという命令でメモリを確保する。 void wma2mp3(void) { short *mp3; short *wma; mp3 = malloc(8931); wma = malloc(893-110; /* mp3[0]からmp3[8930]までshort配列のように扱える。 */ mp3[4] = 0; mp3[801]=555; } main() { while(1) wma2mp3(); getchar(); }
48 : >>46 上記のプログラムなぜかはコンパイルできない。 理由を書け。(配点5)
49 : >>47 そこは、命令ではなく関数と言ってほしいな。
50 : いくらなんでもひどすぎるコードだよな。
51 : C言語はJAVAをエミュレートできる。 #include <stdio.h> typedef struct { int (*println)(const char *, ...); } OUT; typedef struct { OUT out; } SYSTEM; int main() { SYSTEM system; OUT out; out.println = printf; system.out = out; system.out.println("test\n"); }
52 : printlnと主張するなら"test"にしろよ。
53 : if文とgoto文 その1 C言語には、昔ながらのifとgotoをサポートしている。 if (条件式) goto ラベル1 ラベルは、:をつける。 main() { int s; s=getchar(); if (s == 'a' || s == 'o') goto HOG; exit(-5); HOG: putchar(++s); return 6001; }
54 : やさしいC++―まずは「C言語」からはじめよう!! 米村 貴裕 という本があるのですが、「以下」と「未満」の使い方が間違っています。 (a<60)のあるところに、「aが60以下のときは...」と書いてますけど 「aが60未満」の間違いですよね?この本、ほとんどこんな感じで間違いまくり なんですけど、amazonのレビューで評価が凄く良くて買ってしまいました。 レビューで一つもこのことに触れず、星が5と4ばかりなのですが、これって 関係者が自ら書き込んだんでしょ?
55 : 初心者向けの本って初心者が書いているので、仕方ないんじゃないのかなぁ。
56 : >>54 この本はあまりにひどすぎる。問題ですって問題出しといて答えが間違ってるし。 見た限り全部間違ってるから、作者は本気で知らなかったのか?
57 : アマゾンも見てるといい加減だからな
58 : 俺のお薦め(初心者用) C言語 入門 本物志向が身に付く本 【技術評論社】 コンパイラとは何かから説明してるから初心者にお勧め 決して、この本一冊でC言語が理解できるわけではない。
59 : 本物志向って一体何?
60 : 読んだ感想からいうと、本物志向ってのはただの売り文句 って感じ。ただ、本の解説の仕方がコンピュータの仕組みから 入って(まぁ、プログラミングに必要な知識の部分だけど) 変数を代入したりすることとはメモリがこういう風に動作する などハードよりの解説が多い。
61 : 本物志向とか言っておいて C++に移行させてC++本でも儲ける
62 : APLではじめて Brainfuckにキャリアアップ C++で本格化して D信者となる Erlangが流行ったので乗り換えた。 でも仕事はFortranの保守。
63 : Fどまりのアンタは一生なのさ!
64 : Cプログラマ必須テキストです! http://mori.eco.to/
65 : 変数 C言語にも型があり、BASICとさほど変わらない。 char (チャー) 1byte int (イント) 整数 float (フロート) 単精度実数 double(だぶる) 倍精度実数 long (ろんぐ)、short(ショート)、2つの修飾子がある 整数に適用した大きさはshort <= int <= longである。 long doubleと書けば拡張精度となる。
66 : Cの絵本でも読んでおけ。
67 : >>65 人に教えられるレベルじゃねーだろ、お前は
68 : >>1 そろそろわかってきただろうから練習してみよう。 問1 スタックを実装せよ。どのような型でも格納できるようにすること。 スタックサイズは可変=メモリの許す限りとする。 模範解答は明日。 がんばれ。
69 : >>68 やなこった。ばーか。
70 : 開発環境の構築 Hallo World 変数型 演算子 代入演算子 比較演算子 基本的な入出力 関数 プリプロセッサ 配列 ポインタ ポインタ渡し 参照渡し メモリの確保/解放 構造体 文字列 文字コード 文字入出力 ファイル入出力 多次元配列 マクロ 共用体/列挙体 コマンドライン引数 バブルソート FIFO FILO 文字列検索
71 : >Hallo World 面白い
72 : >>1 おはよう。できたかな? 模範解答を示す。 長いので、スレをまたぐが。 #include <windows.h> #include <stdlib.h> #include <string.h> #include <stdio.h> typedef struct tab__stack{ char *data; int size; struct tab__stack *tugi; } STACK; STACK *o721 = NULL;
73 : int pop(void *data){ STACK *sp; int size; if (data == NULL) return -4; if (o721 == NULL) { return 0; } size = o721->size; memcpy(data, o721->data,size); sp = o721->tugi; free(o721->data); free(o721); o721 = sp; return size; } int push(void *data, int size){ STACK *sp; if (data == NULL || size <= 0) return -4; sp = o721; o721 = malloc(sizeof(STACK)); if (o721 == NULL) return 0; o721->data = malloc(size); memcpy(o721->data, data, size); o721->size = size; o721->tugi = sp; return 32; }
74 : main(){ auto char eros[200]; int meko; int gane; DWORD timmer = GetTickCount(); push("aho", 4); push("baka", 5); gane = 0721; push(&gane, 4); pop(&meko); printf("%d\n\n", meko); pop(eros); puts(eros); pop(eros); puts(eros); pop(eros); puts(eros); /* EOF */
75 : >>1 もう教えることはないだろう。 >>1 はプログラムを見せてくれなかったな。 自分のプログラムを他人に見せるのは恥ずかしいかもしれない。 とくにはじめたばかりなのでしょうがないが。 だが、他人に見てもらうこと、指摘されること、他人の目を意識することでプログラムは上達するぞ。 もっとも上達する方法は、漠然とCを覚えるのではなく、作りたい物を決めること。 そのために何が必要なのか考えれば、おのずと上達していくだろう。 あとは>>1 しだいだ。がんばれ。 そして新しいパラダイムを築いてくれ。
76 : 8進定数を10進出力している馬鹿発見。
77 : C言語学習ならまずこれだろ。 http://www.cmt.phys.kyushu-u.ac.jp/~M.Sakurai/prog/progf.html
78 : つぎは、 nullpop 君による、プログラム72 に出てくる型がいかに 65 の説明の通りか。 つまり BASIC とさほど変わってないかの説明です。
79 : >>78 >>72-74 ではいきなりポインタ宣言されてるんですが。
80 : 今からC言語覚えようってセンスがもう........
81 : >>80 マルチか C言語を教えてください!! http://pc11.2ch.net/test/read.cgi/prog/1201319713/ 23 名前:仕様書無しさん[] 投稿日:2008/01/27(日) 14:07:49 今からC言語覚えようってセンスがもう........
82 : >>80 なにが? 汎用アセンラ覚えなきゃ組み込み系は仕事できませんが
83 : そんなにアセンラず、落ち着いて書き込め。
84 : >>82 ならなおさらC言語ができなきゃいけないだろ。 アセンブラの実物見たことないやつがしったかして邪魔スンナぼけ
85 : アセンブラ必要か? 組み込み系でもいろいろあるからな。
86 : 今はもう組み込みでもCばっかりだな。 だが作法が他とは全然違う罠。
87 : >>84 > ならなおさらC言語ができなきゃいけないだろ。 汎用アセンブラてCのことだが…
88 : アセンブラとコンパイラの区別が付かない人は引っ込んでて
89 : うわー
90 : http://www.python.jp/doc/release/tut/node5.html たまたまpythonがインストールされてインタプリタ起動したんだけどすごいね。昔のN88Basicみたいに簡単に使える。 本当は>>>なんだけど書き込みでエラーになるんで削除。 C:\Airblade-1.3.2\python>python Python 2.4.2 (#67, Sep 28 2005, 12:41:11) [MSC v.1310 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. > 2+2 4 > (50-5*6)/4 5 > 7/3 2 > 7/-3 -3 > width = 20 > height = 5*9 > width * height 900 > x = y = z = 0 # x と y と z をゼロにする > x 0 > 3 * 3.75 / 1.5 7.5 > 7.0 / 2 3.5 > word = 'Help' + 'A' > word 'HelpA' > word[0:2] 'He' > word[2:4] 'lp'
91 : >>90 だからなに? 余りに当たり前過ぎて欠伸が出てくるんだけど。
92 : 当たり前って言い方は詐欺的だろ。 確かにPythonを使うのは当たり前かもしれないが、Phthon使う前はなかなかない。 コマンド入力で答えが返るのはDOSプロンプトでもあるが、制約が多くて不自由だし。 スクリプトはどこにでもあるが、1行ずつ実行できるようなのはあまりない。 少なくとも3Dゲームがぐりぐり動くようなのは、ライブラリが優れてるのか知らないが見たことない。 Flashプレーヤーですら3Dっぽく見えても2次元動画だったりするし。 当たり前って言うならどんな環境を知ってるのか教えて欲しいね。
93 : はぁ? MATLABにしろそのクローンのOctaveにしろ、インタラクティブな環境はご存じないのですか? それ自身がインタラクティブな環境で実装されている言語だって色々あるし。 それとも単に「Pythonすげー」って言いたいだけ?
94 : やり取りがあまりにも高度すぎて眩暈がしてきたよ・・・ いちいち突っかかることなのか?
95 : >"for"ループを使用することなくベクトルや行列の操作を行っている >これらの短所にも関わらず、MATLAB は依然多くの科学技術計算で用いられている。 すごいけど >完全な互換性や最新版のMATLABを得るためには、製品を購入する必要がある。 >結果的に、MATLABの利用者はベンダの囲い込みに属することとなる。 囲い込みしてるのが当たり前ってどういう神経してるんだか。 使う可能性が1%もないのに勉強しろって? ば?
96 : >>95 >はぁ? MATLABにしろそのクローンのOctaveにしろ、インタラクティブな環境はご存じないのですか? 「そのクローン」って、意味わかりませんでしたか?
97 : >>96 意味? ニセモノって意味だよな。
98 : 馬鹿が居る。
99 : ほんとだ >>98 に居るな
100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
【Google】Androidアプリ作成part14 (545)
なぜポインタで引っかかる人が多いのか (655)
七行プログラミング part6 (367)
△△もっとStruts2の良さを教えてくださいSsssion6 (630)
ハンガリアン記法 [part1] (225)
JAVAとか未だに使ってる奴いんの (240)
--log9.info------------------
J DILLA aka JAY DEE Part.5 (587)
DJ OASIS Part.7 (615)
THE ROOTS Part.4 (273)
Drake (345)
PSG Part.3 (276)
HIP HOPな香具師よ、今日何してる? 12日目 (366)
FACE 2 FACE Part.2 (846)
【北陸】 076 AREA part9 【富山・石川・福井】 (816)
晋平太-SHINPEITA- (618)
Romancrew Part.3 (396)
THINK TANK Part.20 (747)
於菟也 Part.21 (788)
bmr、wax poetics、groove、remix等音楽雑誌 Part.9 (596)
なぜジャパニーズラップはここまで衰退したのか (314)
DOWN NORTH CAMP Part.2 (264)
MADLIB Part.3 (418)
--log55.com------------------
【PC】世界で唯一、日本の子どものパソコン使用率が低下している
米国牛乳メーカー・ボーデン社が破産申請 レディボーデンも食べられなくなっちゃうのか聞いてみた 2020/01/08
【人生100年】70歳までの就労確保、企業に努力義務。来年4月から。厚生労働省
【情報源はCIA!?】米情報当局が、スパイ衛星で確認「ウクライナ機はイランの対空ミサイルに誤射された」全世界で一斉報道
【国立競技場に続け】新駅「高輪ゲートウェイ」も木材ペタペタ、隈研吾による和の建築 コンセプトはグローバルゲートウェーイ
【速報】イランのイラク米軍基地への攻撃、弾道ミサイルと確認か
【意見】「日本はもはや先進国ではない?」たくさんの理由 ★4
【ネット】生物学者「特攻隊は犬死。国は国民が生活するための道具に過ぎません。道具のために死ぬのはアホでしょ」★2