トップページ⇒tech
146コメント41KB

C言語って簡単だよな

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2007/10/07(日) 17:30:49
オブジェクト指向なんて意識しなくていいから覚えること少ないし。
型が厳格で、ポインタとかいう変態的な機能があるBASICだと思えば簡単だろ。
こんなので挫折する奴は池沼。
0002デフォルトの名無しさん2007/10/07(日) 17:32:16
2
0003デフォルトの名無しさん2007/10/07(日) 17:35:13
生まれる時代を間違えたな
0004デフォルトの名無しさん2007/10/07(日) 17:54:44
まぁ、昔のプログラマは大したことなかったと言えばそうかもしれん。
今も昔も「アセンブリ言語は難しい」とか言う人は多いが、
8080やらZ80やらのアセンブリ言語なんて、今から見れば単純そのもの。
オブジェクト指向が一般化する前は「C言語は難しい」と当たり前のように言われてきたが、
覚えること自体は今時の言語よりはるかに少ない。

フィギュアスケートに例えるなら、昔なら2回転したら「オー、ミラクル!」とか言われたかもしれんが、
今では3回転しても「普通だね」って思われるようなもんだろ。
0005デフォルトの名無しさん2007/10/07(日) 18:32:37
何を作るかによりけりで各言語の利便性で難易度が変わるのに、
前提条件を明確にせず簡単とか言ってしまっている時点で>>1はプログラマとしての適正がない。
0006デフォルトの名無しさん2007/10/07(日) 18:51:48
言語の習得が容易と言ってるだけだから問題無いだろ
論旨を無視して必要以上に一般化して、他人を否定して
いるだけの人間よりは良い
0007デフォルトの名無しさん2007/10/07(日) 19:35:13
>>5
ちぐはぐな解釈だな。とりあえず日本語でおkとだけ言っておく。
0008デフォルトの名無しさん2007/10/07(日) 19:43:30
だからといってクソスレを立てて言い訳ではなーい!
0009デフォルトの名無しさん2007/10/07(日) 20:33:56
まあ、そうだな
0010デフォルトの名無しさん2007/10/07(日) 21:49:33
>>1
CoreFoundation使ってみ
0011デフォルトの名無しさん2007/10/07(日) 21:53:27
>ポインタとかいう変態的な機能
この程度の理解なら日本だけでも何万人もいるだろうが、
こんな糞スレ勃ててまで主張したがる莫迦は >>1 くらいのものだろうなあ。
0012デフォルトの名無しさん2007/10/07(日) 21:58:04
Aと打ち込んでAと表示する、たったそれだけしかない言語があったとする。
機能が少なければそのぶん習得は容易だ。
だから何だ?

総合的にモノをみられない>>1は無能の極み。
0013デフォルトの名無しさん2007/10/07(日) 22:04:08
Cが難しいみたいなカキコがあると、バカにするレスがつくけど、簡単だって意見があっても反対のレスがつくんだな。
0014デフォルトの名無しさん2007/10/07(日) 22:07:41
簡単とか難しいとか論ずる時点で、
阿呆の入れ墨をして全裸で街を練り歩いているようなもの。
0015デフォルトの名無しさん2007/10/07(日) 22:26:40
#include <stdio.h>
#include <stdlib.h>

void shine(char *vaka);

int main(void)
{
    char *str;
    str = (char *) malloc (sizeof(char) * 11);
    if(!str){
        printf("メモリ確保に失敗!\n");
        return 1;
    }
    str = "itteyoshi!";
    shine(str);
    return 0;
}

void shine(char *vaka)
{
    for(;;){
        printf("%s\n", vaka);
    }
}
0016デフォルトの名無しさん2007/10/07(日) 23:13:38
ハサミは簡単とかいっているのと同レベルなんだが、
何に使うか分からないのにいきなり簡単とか言われても、
>>1の頭が悪いという証明にしかならない。

>>15
メモリの確保がまるまるいらん。
0017デフォルトの名無しさん2007/10/07(日) 23:37:55
>>15
いちおうfree()関数は入れろ。

>>16
動的なメモリの確保をしたほうがメモリの節約になるのでは?
0018デフォルトの名無しさん2007/10/07(日) 23:54:54
その >>1 に必死になって噛み付いてる奴も、だいぶ頭が悪いと思うが
0019デフォルトの名無しさん2007/10/07(日) 23:57:36
>>17
>str = "itteyoshi!";
これで悟れ、しかも節約とか意味不明。
0020デフォルトの名無しさん2007/10/08(月) 00:04:31
std::string str;
str = "itteyoshi!";

メモリの確保と文字列のコピー、C++の方がよっぽど簡単に書けるよな。
0021デフォルトの名無しさん2007/10/08(月) 00:12:23
>>19
動的確保を使わんでも動くが、
必要な分だけ確保して、必要なくなったら開放するのは
別に悪くないと思うのだが。

動きゃいいんだったらstr[100]とかやって配列でガッポリ確保すりゃいいわけだが、
馬鹿っぽいやりかただし。
0022デフォルトの名無しさん2007/10/08(月) 00:18:48
>>21
だからメモリ確保云々以前にプログラムが間違ってるんだよ。
なんでそんな基本的な部分に気がつかないんだ?
0023デフォルトの名無しさん2007/10/08(月) 00:24:06
>>22
エラーなしで普通に動くと思うが。
なぜmallocしとるのかといえば、
"itteyoshi!"を納めるのに必要なメモリ分だけ動的に確保しておけば、
あとで文字列が不要になったときにfree(str)で開放できるからだろ。
まぁ、このプログラムの場合は役に立ってないが、
メモリの動的確保のサンプルならばこれでいいのでは?

あなたはおそらく動的確保のメリットをわかってないし、
使ったこともないのだね。
0024デフォルトの名無しさん2007/10/08(月) 00:25:06
釣りか。
0025デフォルトの名無しさん2007/10/08(月) 00:26:11
× str = "itteyoshi!";
○ strcpy(str,"itteyoshi!");
0026デフォルトの名無しさん2007/10/08(月) 00:33:20
配列とポインタの違い

配列ではこうできない。
char str[] = "Hello";
str = "Goodbye"; /* これは間違い */

一方ポインタでは,
char *str = "Hello";
str = "Goodbye"; /* これは通る */
0027デフォルトの名無しさん2007/10/08(月) 00:36:05
>>23
>あなたはおそらく動的確保のメリットをわかってないし、
>使ったこともないのだね。

その前に文字列の扱いとポインタについてやり直せ
確保したアドレスの入っているポインタを上書きしたら、確保した意味がない
初心者より酷いぞ
0028デフォルトの名無しさん2007/10/08(月) 00:50:35
> メモリの動的確保のサンプルならばこれでいいのでは?

だめだろw
・せっかく確保しているのに別の領域を示すようにしている
・さらに元の領域は解放してない
0029デフォルトの名無しさん2007/10/08(月) 01:16:14
仕方ない。
俺が直してやろう。

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    char *str;
    char moji[10] = {'i', 't', 't', 'e', 'y', 'o', 's', 'h', 'i', '!'};
    int num, i;

    num = 10;
    str = (char *) malloc (sizeof(char) * (num+1));
    if(!str){
        printf("Error!\n");
        return 1;
    }

    for(i=0; i<num; i++){
        *(str+i) = moji[i];
    }
    *(str+num) = '\0';
    printf("%s\n", str);

    free(str);

    return 0;
}
0030デフォルトの名無しさん2007/10/08(月) 01:26:03
文法覚えるのが簡単か?ってことなら簡単だろ。
「プロパティのオブジェクトがメソッドでポリモーフィズムだからカプセル化で継承が・・・」
とかいう話が無い分だけ。
0031デフォルトの名無しさん2007/10/08(月) 01:34:58
> プロパティのオブジェクトがメソッドでポリモーフィズムだから

アルファがベータでイプシロンした、なぜか? を思い出したよw
0032デフォルトの名無しさん2007/10/08(月) 01:37:19
Cの文法覚えりゃ何でも出来るからな。
0033デフォルトの名無しさん2007/10/08(月) 01:42:47
みんなに聞きたいんだけどよー
Cのユニットテストツール何つかってる?
0034デフォルトの名無しさん2007/10/08(月) 01:53:33
C では使ってないな
0035デフォルトの名無しさん2007/10/08(月) 01:55:54
CUnit
0036デフォルトの名無しさん2007/10/08(月) 01:57:34
>>35

ソースくれ
0037デフォルトの名無しさん2007/10/08(月) 02:00:20
>>36
おいよ

http://sourceforge.net/projects/cunit/
0038デフォルトの名無しさん2007/10/08(月) 02:02:30
>>37
サンクス
0039デフォルトの名無しさん2007/10/08(月) 02:12:08
Cだとめんどくせーw
ttp://agileware.jp/agileYokocho/articles/c_tdd/
0040デフォルトの名無しさん2007/10/08(月) 02:31:32
>>39
たしかにTDDのありがたみが分からないよな
ってかこんなのあった
簡単に使えるみたいなこと書いてある
https://sourceforge.jp/projects/cue/
0041デフォルトの名無しさん2007/10/08(月) 02:37:17
>>40
CUnitよりいいかも
0042デフォルトの名無しさん2007/10/08(月) 02:44:57
俺以外にもそういう奴いる?を一体どういう解釈したんだw
0043デフォルトの名無しさん2007/10/08(月) 02:47:23
誤爆。悪い。。('A`)
0044デフォルトの名無しさん2007/10/08(月) 03:00:30
>>40
CUnitと似てるとおもったら
CUnitをベースに開発したらしい
0045デフォルトの名無しさん2007/10/08(月) 10:15:06
文法は簡単だよな

問題はそこらじゅうに罠が張り巡らされている事
0046デフォルトの名無しさん2007/10/08(月) 10:34:24
いくら罠があっても>>15みたいな馬鹿なプログラムを書くのはまれ。
0047デフォルトの名無しさん2007/10/08(月) 11:55:35
>>40
大学1年生向きだな
0048デフォルトの名無しさん2007/10/08(月) 13:18:57
C言語は簡単ていうけどしばらく離れると標準関数の仕様とかすぐにすっぽ抜ける
0049デフォルトの名無しさん2007/10/08(月) 13:31:41
8080アセンブラって簡単だよな
Z80アセンブラって簡単だよな
N88BASICって簡単だよな
0050デフォルトの名無しさん2007/10/08(月) 13:41:55
ま、やっぱRubyサイキョって事で。
一度使ったら二度と忘れないくらい簡単やしな
0051デフォルトの名無しさん2007/10/08(月) 14:27:16
ま、やっぱ○○サイキョって事で。
一度逝ったら二度と帰れないくらい簡単やしな
0052デフォルトの名無しさん2007/10/08(月) 14:33:24
>>48
忘れたら調べりゃいいだけだ
0053デフォルトの名無しさん2007/10/08(月) 14:42:25
#include <stdio.h>
main(){while(printf("%s\n","itteyoshi!"));}
0054デフォルトの名無しさん2007/10/08(月) 15:04:38
このスレで頑張ってるやつて、Cが簡単ってことになるとプライドがズタズタになるやつなんだろうな。
0055デフォルトの名無しさん2007/10/08(月) 15:06:44
誰も頑張ってないじゃん
簡単という意見が大半だぞ
0056デフォルトの名無しさん2007/10/08(月) 15:27:12
構文の意味を理解するには簡単な言語だと思うね。
IDE使って簡単なのを作るだけならC#とかJavaとかのほうが簡単そうな感じ。
0057デフォルトの名無しさん2007/10/08(月) 15:40:11
先進国ではC#が基本言語に登録されてるみたいね
Cの時代は終わりつつある
俺が中学のころ親にプログラミングやりたいっていったらBASICやれといわれたんだが
今思えばこれは明らかにミスだろうと思った
Cは誰でもわかるところがミソ
子供にプログラミングやらせるならCやったほうがかなりの近道
高校ではCOBOLやっているが死ぬほどつまらない
0058デフォルトの名無しさん2007/10/08(月) 15:47:00
BASICは元々教育用言語なわけで
ある意味Cより簡単じゃんよ
0059デフォルトの名無しさん2007/10/08(月) 15:50:21
Cの知識があれば他の言語へ移るときさほど苦労はしないが
BASICは文法が似てるといってもやはりJAVAやC++とは程遠いので
世の中ではやっているJAVAやC++へ進むためにもそれらがお手本にしたCを勉強するのが
初歩ではいいのではないかと思います
0060デフォルトの名無しさん2007/10/08(月) 15:52:07
>>57
Cの時代が終わりつつあるというよりも
流行の言語から普通の言語になっただけっぽいが。
0061デフォルトの名無しさん2007/10/08(月) 15:58:00
正直なところこれからは組み込みプログラマーが儲かる時代が来ると思うんだがどうだろう
0062デフォルトの名無しさん2007/10/08(月) 16:09:33
組み込みは最近C++にほんのりシフト気味
0063デフォルトの名無しさん2007/10/08(月) 16:13:32
もうC言語覚えてから4年近く経って完全に忘れてしまったのだが、
初心者にとってプログラミング言語を覚えることの難しさ、、、って一体なんだ?
0064デフォルトの名無しさん2007/10/08(月) 16:15:11
概念
文法を覚えたとしてもこれがどうしてこうなるのかって事を考えてしまうこと
これをすればこうなるが分かっていれば初心者はいいのにそれ以上を求めてしまう
ゆえに何が分からないのか自体が分からなくなる

人のコードを見てもどうしてこうなるの?がまずくる
自分でいじってみれば一目瞭然なのに
0065デフォルトの名無しさん2007/10/08(月) 16:15:54
>>63
それ覚えた気になってただけだよ
0066デフォルトの名無しさん2007/10/08(月) 16:18:06
>>65
? なにか勘違いしてないか?
C言語を、完全に忘れてしまったわけではないぞ。念のため。
0067デフォルトの名無しさん2007/10/08(月) 16:22:45
日本語下手だね
0068デフォルトの名無しさん2007/10/08(月) 16:26:04
自分の読解力も疑ったほうがいいよ。
0069デフォルトの名無しさん2007/10/08(月) 16:27:57
--
63 名前:デフォルトの名無しさん[sage] 投稿日:2007/10/08(月) 16:13:32
もうC言語覚えてから4年近く経って完全に忘れてしまったのだが、
--
66 名前:デフォルトの名無しさん[sage] 投稿日:2007/10/08(月) 16:18:06
>>65
? なにか勘違いしてないか?
C言語を、完全に忘れてしまったわけではないぞ。念のため。
--
何この阿呆。
0070デフォルトの名無しさん2007/10/08(月) 16:28:32
読解力というより訂正力だな
0071デフォルトの名無しさん2007/10/08(月) 16:38:35
普通にこういう言い回しするだろ?本とか読まない人?
0072デフォルトの名無しさん2007/10/08(月) 16:41:49
もうC言語覚えてから4年近く経って忘れてしまった部分もあるんだが
これが正解
0073デフォルトの名無しさん2007/10/08(月) 16:43:13
忘れた、は次の行の「初心者にとって〜難しさ」にかかってるんだけど。
0074デフォルトの名無しさん2007/10/08(月) 16:45:31
なんでそんなに必死なの
0075デフォルトの名無しさん2007/10/08(月) 16:46:31
大学のPC室で「せぐめんてぃしょんっ!!!何これwスイーツ(笑)」って叫んでる女の子がいたから
ありがちなバグとかいろいろ教えてあげたら食事に誘われました\(^O^)/
やっててよかったC言語\(^O^)/
0076デフォルトの名無しさん2007/10/08(月) 16:47:19
やさしく説明してあげてるのに必死とはなんだ(怒)
0077デフォルトの名無しさん2007/10/08(月) 16:47:56
バカ女はお前に任せた
0078デフォルトの名無しさん2007/10/08(月) 16:53:29
自分が間違いではないと思い込めるそのパワーに脱帽w
0079デフォルトの名無しさん2007/10/08(月) 16:54:14
時には認めることも大切だよねwwwwwww
0080デフォルトの名無しさん2007/10/08(月) 17:01:09
お互いじゃない?
そもそも引っ掛けて来た側が皮肉だけで指摘出来てない池沼なのは。。。
0081デフォルトの名無しさん2007/10/08(月) 17:36:35
おまいらの使ってるプログラム言語おしえてくれ
おれはCがいちばん好きで、あとRuby、たまにScheme
0082デフォルトの名無しさん2007/10/08(月) 18:21:41
趣味で作るPC用プログラムは基本的にGUIならC#でCUIならCかC#で書く
C#でGUI作ってCでDLLを作って組み合わせる事も有る
あとはJavaでiアプリとかPHPも経験ある
最近の仕事はJavaがメイン
一番好きなのはC#でCは2番目だな
0083デフォルトの名無しさん2007/10/08(月) 20:36:54
>>31
違うよ。
アルファがベータをカッパらったらイプシロンした、なぜだろう?
だろ。
0084デフォルトの名無しさん2007/10/08(月) 21:00:34
俺はC#を使う
CGIはPHPだが、今では別の言語に乗り換えるべきかと思っている
仕事ではまた違う言語を使う
0085デフォルトの名無しさん2007/10/08(月) 22:23:10
CGIもCで書こうぜ。
速度が段違い。

C#も好きだがunsafeコードだらけになるw
0086デフォルトの名無しさん2007/10/09(火) 01:38:44
>>85
CGIってそんなに速度が重要か?
0087デフォルトの名無しさん2007/10/09(火) 01:43:40
>>40を使ってCGIのテストをしたいのだが、できるのかな?

0088デフォルトの名無しさん2007/10/09(火) 07:06:28
>>86
ヒント:2ちゃん
0089デフォルトの名無しさん2007/10/09(火) 08:19:00
bbs.cgiはPerl
0090デフォルトの名無しさん2007/10/09(火) 09:47:50
自分はJavaやC#ばっかりだったので、CとかC++で組み込みみたいなものやってる
人たちを尊敬してしまう。

ただ、どうなんだろうな。「え?アセンブリも分かるの?凄いね」っていうのと同じなの
かも知れない。

ということで、次は関数型、HaskellとかLispとか勉強してます。ポインタとか、ちょっと
何ていうんだろうか、ガス使わないで火を起こせるのが凄いっていうのに近い気がして
ちょっと・・・。
0091デフォルトの名無しさん2007/10/09(火) 11:18:49
>>90
お前はまさに、日記はチラシの裏に書いてろ。
0092デフォルトの名無しさん2007/10/09(火) 12:19:33
>>90
おまいは火を熾すのにガスを使うのか? 珍しいな。
0093デフォルトの名無しさん2007/10/09(火) 14:32:54
アセンブラやんなよ。
Lispに使い道あるかって〜と「え〜」で終わり。

今、実用性がある言語はJava、C++、SQLの3つだけ。
あとは共同開発に向かないので「マニアのお遊び化」してる。
0094デフォルトの名無しさん2007/10/09(火) 14:34:46
で、遊ぶならPerl、PHP、アセンブラの3つだろう。

計6つ知ってれば何も怖いものはない。
0095902007/10/09(火) 15:08:55
いや、C#も3.0からは関数型言語のアイデアを取り入れているし、Javaだってそういう
方向に動いているでしょ?

命令型言語としては、Java以降っていうのは量的な変化しか無いと思う。ライブラリが
充実してるとか。

次のステップとしては関数型言語でしょ。参照透過性とか、今の命令型言語では限界がある。
0096デフォルトの名無しさん2007/10/09(火) 15:28:29
COBOLでもやってた方がいいね。
あるいはMathematicaか。

なぜ6つを薦めたか?
好きな物以外のことでもちゃんと勉強しておかないと、周りと会話が通じなくなると思う。
0097デフォルトの名無しさん2007/10/09(火) 17:30:45
用途を明確にしないで言語の名前を列挙する奴は、プログラマの適性がゼロ。
ハサミだカッターだ、のこぎりの方がたくさん切れるって、頭が悪いにもほどがある。
0098デフォルトの名無しさん2007/10/09(火) 18:03:25
どうぐにつかわれるのではない。
どうぐはつかいこなすもの。
ぷろならつかえてあたりまえ。

みんなわかってるのに。
あたまがわるいとかばかとか、いちいちじぶんのことかかなくていいよ。
0099デフォルトの名無しさん2007/10/09(火) 18:05:34
さて、Haskellでも勉強するか。
0100デフォルトの名無しさん2007/10/09(火) 18:07:57
ウザいからHaskellスレでやれ。

関数型プログラミング言語Haskell Part7
http://pc11.2ch.net/test/read.cgi/tech/1174211797/l50
0101デフォルトの名無しさん2007/10/09(火) 20:39:06
職人は常に自分の技術を磨いていくものだが、
使えて当たり前とか勘違いしている奴は成長しない。
■ このスレッドは過去ログ倉庫に格納されています