今からド素人の俺がC言語を勉強してみるスレpart1
1 :
C太郎 ◆JHIl/qGRGI :
去年四年間務めた会社を辞め、ブラック企業にあたり、無職中の俺が一から勉強してみますよ!
「猫でもわかるC言語プログラミング」って本を買ってみた。
とりあえず勉強してみるよろしく。
while(1) { printf("無限ループって怖いね。\n"); }
3 :
C太郎 ◆JHIl/qGRGI :2009/04/03(金) 16:18:38
>>2 早速初レスありがとうございます。
ただいま2進数について学習中です。
また会話が成り立つようになったり、わからないことがあったら教えてください。
5 :
C太郎 ◆JHIl/qGRGI :2009/04/03(金) 16:46:53
2進数なんか知らなくてもプログラム組む上では問題ない
PHPのほうがカンタンだよ
8 :
C太郎 ◆JHIl/qGRGI :2009/04/03(金) 23:51:56
友達来てて結局出来なかった。
今visual studio c++
インストールしようとしても出来ない。なんでだ?これフリーソフトじゃないのか?
>>6 そうみたいですね。
>>7 PHP言語すか?
とりあえずCやってみます。簡単という言葉には誘われますが。
9 :
C太郎 ◆JHIl/qGRGI :2009/04/04(土) 00:06:26
Microsoft silverlight runtime
ってのがインストールできなかったと出るんだけど??
特に気にしなくておk。
一度整理した方がいいと思うんだけど、プログラマになりたいの?
趣味ならC言語でおk。職業にしたいならプログラマにも何種類かあって
・ネットを使って通信したい。
・ゲームが作りたい。
・なんでもいいからプログラマという職業につきたい。
他にも色々あるけど、目標別に覚える事も変わってくるよ。
11 :
C太郎 ◆JHIl/qGRGI :2009/04/04(土) 00:36:19
>>10 あ、ありがとうございます。
今は契約社員テレアポや派遣の販売員なんかも面接受けると思うので、
趣味化する可能性ありますが三択の中では「なんでもいいからプログラマという職業につきたい。」
になると思います。
12 :
C太郎 ◆JHIl/qGRGI :2009/04/04(土) 00:53:46
初プログラミング成功(?)
#include<stdio.h>
int main()
{
printf("Hello World\n");
return 0;
}
ハロー!ワールド!
そして大変なことに気付いた。
今まで
()<>;”#
↑このあたりの記号なんかはシフトキー押しながらほとんど使っていなかった為ブラインドでちゃんとまだ打てない・・・
この辺も特訓していかなければ!
次!
13 :
C太郎 ◆JHIl/qGRGI :2009/04/04(土) 01:07:43
次も成功!
/*hello.c*/
#include<stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}
/*と/*の間は日時やソースファイル名、覚書きをするところなんだな。フムフム
やばい・・・日中オナニーしたから眠くなってきた。
しかしこんなところで負けてられない。
次!
14 :
C太郎 ◆JHIl/qGRGI :2009/04/04(土) 01:25:05
一旦寝よう。
レヴェル低いな俺。こりゃただの趣味になりそうだなウェッウェッウェッw←アホ
こんなんだから無職なんだよ。
でもとりあえず寝る。
15 :
C太郎 ◆JHIl/qGRGI :2009/04/04(土) 01:26:17
皆さんおやすみなさいzzz
Cっていちいち、関数使ったらリターンしないとだめなのね
21 :
仕様書無しさん:2009/04/04(土) 09:36:45
あ、このスレ、マ歴半年の私も支援します!
って伸びるかなあ。。
私はVB(正確にはAですが)とSQLやってるんですけどね。
やっぱりCやらないとだめですかね。
22 :
C太郎 ◆JHIl/qGRGI :2009/04/04(土) 11:16:18
こんにちわ〜。
>>16 まだその会話はできません。
>>17-20 なるほどこういうのが出来るんですね。
>>21 ありがとうございます!
先輩よろしくお願いします!
VBとSQLですか・・・?
噂によるとCとJAVAが勉強するには良いと聞き、Cから始めることにしました。
とにかくC勉強してみます。
VBとSQL
>>1 1.ここはお前のチラシの裏じゃねぇ(ry
2.そもそも板違い。(言語の勉強したいのならム板に行け)
3.この手のスレ定期的に立つな。
24 :
C太郎 ◆JHIl/qGRGI :2009/04/04(土) 12:59:57
>>23 そもそも2ちゃんねる自体がチラシ裏(ry
自分的にはOKなんですが、ダメならスレッド削除かスレスト入るでしょう。
ひろゆき&管理者の方々におまかせします。
>>23 Q. この手のスレ定期的に立つな。
A. 糞スレをたててはサーバーリソースを消耗させることを生きがいにしている糞ニートがいるから
>>21 VBとVBAは別物
それにExcelVBAと区別する意味でAccessVBAと書くべき
>>24 糞スレを常時ageられるのはうざい
>>24 何でもかんでも噛みつきたいヤツが居るんだよ。
気にするな。
>>23 今更言うまでもなく、この板は糞スレまみれなんだから、どうでもよくね?
>>21 VBAとsqlか
DBの管理方面に進むなら、それもありかもしれないが
スキルとしてプログラミングを並べたいなら、Cはやっとけ
C太郎、IDで無いからって自演してるだろ。
29 :
25:2009/04/04(土) 22:58:15
WindowsMobileでもSQLServerCompactが使える時代ですよ
汎用系でも業務系でもWeb系でもDBの重要性は高いのに
DBの知識がまったく不必要なプログラマは、組み込み系かよっほど何かに特化している奴かぐらいじゃねえの
21がどんな会社に勤めているかは知らないが
一般的に小さい会社ほど汎化した能力の人材が必要になる
>>26 それは俺のことかな?
と思うんだから、そうなんだろうなあー
>>17-20 こ れ は ひ ど い
ボタンで移動するだけだったり、乱数出してるだけかよ
さぁ今からプログラミングの勉強しますよ〜!
つーか常時ageだったのはスマン。
自演はしてない。ではしまーす。
寝ます。おやすみなさいzzz
桜見に行かなきゃ。
これブログでやったほうがよくね?
/* format03.c */
#include <stdio.h>
int main()
{
double a = 0.5, b =10.5;
int c =215, d;
char e = 'A';
printf("%f + %f = %f\n", a, b, a + b);
d = c + 11;
printf("cの値は%dでこれに11を加えると%dになります\n", c,d);
printf("eには\"%c\"が代入されています\n", e);
return 0;
}
で入力すると0.5が0.500000
10.5が10.500000
11が11.000000
とか表示されるんだがこの右のうっとーしー0は何で表示されるのか?
表示させないためにはどうすればいいんですかね?
暇な方教えてください。
あ、つーか書いてました。失敬失敬。
つーか猫でもわかる
printf("もう少し詳しい値は%10.81fです\n", pai);
printf("もう少し詳しい値は%15.131fです\n", pai);
じゃなくて
printf("もう少し詳しい値は%10.8fです\n", pai);
printf("もう少し詳しい値は%15.13fです\n", pai);
じゃん。
上の方で行くと小数点以下の0が大量に表示されるよ?
間違えてる?修正したら出なくなったけどなんで出なくなったかも今の俺のレヴェルでは理解できん。
double pai = 3.14159265358979;
int mon = 2;
float flt = 1.2f;
で
printf("%e\n", pai);
上の意味がわからん。
3.141593e+000
e+000ってなんだよe+000って!二回言っちまったよ。
実数を適切に丸める時は %g
小数点以下を指定する時は %.3f (3桁の時)
e+000は10の0乗、つまり1
printf関数の書式設定文字列を調べてみる
37さんレスありがとうございます。
でもレスの内容が理解できません。いつか理解できるようになると思って、
とにかく打ち込み&勉強して理解できるように努力します。
とにかく・・・進みます。
丸めってのは切り上げのことすね。
10乗の0は1
これくらいしかわからないです。
e+000は10の0乗すか?
わけわからんようになってきたw
>>42 きちんと多重書き込みやHTMLタグ混入の対策がしてある
スレッド機能をつけたり、画像掲示板にしてみたりとか夢が広がるな
ちなみに2ちゃんねるなんかだとDBへのアクセスを減らすために、書き込みがあるたびにindex.htmlを生成してる
>>43 >ちなみに2ちゃんねるなんかだと
>DBへのアクセスを減らすために、
>書き込みがあるたびにindex.htmlを生成してる
へーこんなことやってるんだー
お詳しいですね?
ちなみに多重書き込み対策は
特にやった記憶は無いんですが、
結果的に自動的になってました v(^_^)
>DBへのアクセスを減らすために、
>書き込みがあるたびにindex.htmlを生成してる
DBじゃなくて、ただのdatファイル。
index.htmlを生成するタイミングも固定値。
47 :
仕様書無しさん:2009/04/26(日) 00:05:46
バカがノリでプログラミング始めたって、続くわけがないw
49 :
仕様書無しさん:2009/05/05(火) 17:30:37
スレ主よ、帰ってこい。
50 :
仕様書無しさん:2009/05/06(水) 12:53:46
お、俺にとっても良スレ発見!!すれ主よ、仲良くしようぜw
C言語プログラムソースはmain()から開始の認識だったのだが、最近の統合開発環境では違うメソッドが最初に開始されるので困った
(main()が隠蔽されている...)
でっていう。
最近の統合開発環境なんて知らんがな。
メソッドってなんだよ。どれだけ高級言語に慣れてしまっているんだ。
別にC言語プログラムソースは、main()から始めなくてもいいし、main()すらいらない。
リンクの時に、main()が別のオブジェクトにありさえすればいいだけ。
機械語になった時点で、main()の前に、プログラム実行に伴う前処理
(メモリ確保とかコマンドラインの引数渡すとか)が入ることは周知の事実。
53 :
仕様書無しさん:2009/05/09(土) 18:43:13
>>52 ふつうリンカオプションで変えられることもわすれないでください><
>>51 Windowsのコンソールじゃないアプリケーションは統合開発環境使わなくても昔からそう。
リンカにSUBSYSTEM:Windowsを指定するとエントリポイントがmainじゃなくてWinMainに勝手になるみたい
そういう風にできたとしても、それはANSI Cで許されてるの?
57 :
仕様書無しさん:2009/12/16(水) 13:48:44
このスレは今日から俺が使わしてもらいます
先週から勉強し始めてネットで調べた結果、入門書として教材は
やさしいCと独習Cを買いました
独習Cは1ページ目から意味不明だったのでやさしいCから勉強を始めることにしました
現在レッスン3の変数について学んでます
とりあえずの目標は来年1/31に行われるC言語2級取得です
では頑張ります
スレ主に変わって質問してもいいかな?
12月からC言語の勉強している。
今までアク禁食らってた。
一応自分のブログも持ってるけど誰も返事してくれないし。
ちなみに、今の新着度は
基本的なソースコード
変数
関数イフ文
配列
まで、自分は10日で覚えるC言語入門を使ってる。この手の本の一時間目とか一日を進捗通り行ったためしがない。
今は引数について勉強しているいつも新しいところに行くと「はぁ?」なことばっかり。
とりあえず、目標はC言語でゲーム作成。
野望はiphonアプリ作成でボロ儲け。
・・・Cなんて覚えなくてもいいとか言われそうだけどプログラミング全然わかってないし。
ちなみに、コンパイルにはコマンドプロンプト使っていていつも真っ黒で味気ないからお金のかからないお勧めがあったらよろしこ
俺的には、どうせ趣味でやるなら、
基本構文とコンパイル方法が解ったら、
つまらん本なんか読んでないで、さっさと作りたいもの作り始める/作るための調査を始める方が、
モチベーションも続くと思うが
いいことを教えてやろう
何故、プログラミングをするのに、C言語を覚えなくちゃいけないのか?
それは、プログラミングがまだゴミで、
プログラマーが、OSやハードウェアについて知っていないと、
何かしら深い部分でエラーやバグが起きたときに、全然対処が出来なくなるからだ
C言語を学ぶ = OSやハードウェア について最低限の知識だけは得られるわけ
近い将来、深い部分でのエラーなど滅多に出る事がなくなり、
ソフトウェアを作る人が、C言語を覚える価値がなくなる日もいつかくる。
10年後か、20年後か、 それでもまだCを覚えようとするか。
C++? C++というのは、 時代遅れのCという言語を無理やり現代でも使えるようにしたものだ
あちこちネジが飛びまくったり、フレームが内側から破壊されて鋭利な鋼鉄が露出してても誰も気にしない
だって、元々ダメなものが詰まっているものを、技術力任せで内包したんだ。誰だってダメなことはわかってる
ダメな部分に触れないように、無駄に意味の無いクオリテイィ−の高い技術力でC++を巧みに扱う人たちをハッカーとも呼ぶかもしれない
つまり、C言語はカス
誰もレスしないスレッドだなここ
俺も今になって、言いたくなったんだ
「やめとけ」 と、 この職業はロクなものじゃない
が、そこに有意義を見つけるか、
あるいは、ほかにいくあてが何もないのなら、仕方がないんだろう
2chで「やめとけ」と言ってる人間は、とてもスキルが高かったのかもしれない
俺が今、新参者に「やめとけ」と言っておきたい理由は、
俺自身と競って、今更新参者が勝てるわけが無いと、新参者を見下してしまってるからだ
そうだな、 瞳がキラキラしてるうちは絶対に勝てやしない。
技術を高めることと、 幸せを捨てる事は、
コンピュータに限らず、様々な技術分野で、 トレードオフだ。
「やめとけ」 。は
わざわざ、 幸せを捨てにいくなと、まだ自分の中に残ってる僅かな人の心が、 言ってる
64 :
天使 ◆uL5esZLBSE :2011/07/01(金) 17:37:52.26
> 野望はiphonアプリ作成でボロ儲け。
65 :
仕様書無しさん:2011/07/01(金) 19:08:29.28
まだ悩む
JAVAがいいのか?
それともCがいいのか?
んも〜どっち?
両方やれ
どっちも金になる
C覚えてからJAVAの方が楽じゃないかな
JAVAから入るとポインタで躓きそう
あまり自由度の高い言語からはいると、やっていい事と悪い事の判断が大変だよ。
なんでもやっていいっていうルールの中で何十年もかけて沢山の定石を作った訳だから、簡単に「何故そう書いているのか」を判断する事が出来ないはず。
そういう意味で、Javaとか.netのがいいと思う。
まぁ結局、やりたいことによるんだが。
70 :
大天使 ◆uL5esZLBSE :2011/07/05(火) 22:06:23.98
うるせーよ黙れ
何かが
>まぁ結局、やりたいことによるんだが。
だよ
まとめたつもりか? きめえんだよ市ね
>>70 黙れよ鼻デカ不細工の雑魚が。勝手にあの子でも背負ってろよキモヲタストーカー野郎。
OO的な書き方をしたいのであれば、言語に縛られた方が変な癖がつかなくていい。だから、JavaやC#をやった方がいいと思う。
しかし、処理速度やタイトな制御が必要な場合は中間コード吐くタイプの言語じゃ実現できない要求もある。
両方取りのC++って手もあるが、それこそ学習コストが高い。
Cで書いても結局は自力で頑張って書くOOになっていくのだから、「特にやりたい事がないのであれば」無駄に再発見する手間を省く意味でも言語に縛られるJavaやC#からの方が勘を掴みやすいと思う。
という意味で、やりたい事によるって言ったんだよ。
あー説明めんどくさ。
72 :
1:2011/12/30(金) 17:03:04.85
人間の欲望が無限大であるかぎり、
C言語が廃れることは絶対に無い。
if(C++ == 最強)
{
//ここが実行される
}
else
{
//ここは実行されない
}
75 :
分裂 小平汰:2012/01/10(火) 21:48:03.40
あたしは分裂病と診断されていますが、趣味でプログラム書いてます
気狂いでもプログラム書いて良いよね
int main(void){
printf("welcom schizo world\n");
return 0;
}
76 :
分裂 小平汰:2012/01/11(水) 00:54:27.10
耳鳴りがこの最悪の人生の始まりでした
いまこの瞬間も夢の中にいるようです
お薬によって自分が自分でない感じ・・・
void *で渡されたパラメーターのようにふわふわと定まらない感じ・・・
#include <stdio.h>
#include <memory.h>
typedef struct{
unsigned char str[256];
}type;
int nightmare(void *data){
unsigned int n;
type s_type;
memcpy(&s_type,data,sizeof(type));
printf("%s",s_type.str);
n=s_type.str[3] <<24 | s_type.str[2]<<16 | s_type.str[1]<<8 | s_type.str[0];//windows
printf("%d",n);
return 0;
}
void main(int argc,char **argv){
int n=999999;
char *str="schizo";
nightmare(&n);
nightmare(&str[0]);
}
77 :
分裂 小平汰:2012/01/11(水) 01:01:08.89
ところでtypeof演算子ってC言語にはないのですね・・・
78 :
分裂 小平汰:2012/01/11(水) 12:33:44.40
おはようございます。みなさんお仕事、お疲れ様です。
今日も一日が始まりました。
世間から隔離された淡い緑色の空間であたしは過ごしています。
あたしの意識は茫洋とした記憶の断片をたゆたう
ポインタで指し示された関数のように誰かあたしに道を示してくれる人はいないですか?
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<time.h>
void func1(char *str){
strcpy(str,"schizo 1");
}
void func2(char *str){
strcpy(str,"schizo 2");
}
void func3(char *str){
strcpy(str,"schizo 3");
}
void func4(char *str){
strcpy(str,"schizo 4");
}
void main(void ){
char str[256];int i,j;
void (*p_func[2][2])(char *);
p_func[0][0] = &func1;p_func[0][1] = &func2;
p_func[1][0] = &func3;p_func[1][1] = &func4;
srand((unsigned int)time(0));
i=(int)((rand() / ((double)RAND_MAX+1.0)) * 2);
j=(int)((rand() / ((double)RAND_MAX+1.0)) * 2);
(*p_func[i][j])(str);
printf("%s\n",str);
}
79 :
分裂 小平汰:2012/01/11(水) 18:42:26.62
初めに言葉があった、言葉は神と共にあった、言葉は神であった・・・
私の頭の中に鳴り響く言葉も神の御言葉なのでしょうか?
それはリングバッファのように繰り返し繰り返し鳴り響く・・・
私は問いたい。ああ私の主よ・・・なぜこのような仕打ちを私に与えるのか?
80 :
分裂 小平汰:2012/01/11(水) 18:42:57.91
#include<stdio.h>
#include<memory.h>
#define MAX 10
int ring[MAX], write, read;
void putQueue(int g){
int p;
p = ( write + 1 ) % MAX;
ring[p] = g;write = p;
}
void getQueue(int *p){
int point;
point = ( read + 1) % MAX;
*p = ring[point];ring[point]=0x00;
read = point;
}
81 :
分裂 小平汰:2012/01/11(水) 18:43:13.57
void printQueue(){
int index,point1,point2;
point1=point2=0;
printf("ringbuffer[");
for(index=0; index < MAX; index++){
point2 = (point1+1) % MAX;
printf("%3d", ring[point2]);point1 = point2;
}
printf("]\n");
}
void main(void){
int num;
memset(ring,0x00,MAX);
write = read = 0;
printQueue();putQueue(1); printQueue();putQueue(2); printQueue();putQueue(3); printQueue();putQueue(4); printQueue();putQueue(5); printQueue();putQueue(6); printQueue();
putQueue(7); printQueue();putQueue(8); printQueue();putQueue(9); printQueue();putQueue(10); printQueue(); putQueue(11); printQueue();
getQueue(&num); printQueue();getQueue(&num); printQueue();getQueue(&num); printQueue();getQueue(&num); printQueue();
getQueue(&num); printQueue();getQueue(&num); printQueue();getQueue(&num); printQueue();getQueue(&num); printQueue();
getQueue(&num); printQueue();getQueue(&num); printQueue();
}
CにしろC++にしろそれだけ勉強してる分には面白くないんだよねー。Cだけ、C++だけじゃ
なんにもできないんだから。
83 :
仕様書無しさん:2012/01/19(木) 15:18:48.70
構造体ってどんなの?
84 :
分裂 小平汰:2012/01/19(木) 22:21:58.34
>>82 そうですねえ・・・
本来は道具の使い方を覚えるのは目的があるからなんですよね
目的がないまま道具の使い方だけ覚えても楽しくないですよね
>>83 構造体はデータを1まとめにしたものです。
と素人のわしが偉そうにいってみるテスト
ところでこちら共用体っていうんですが、共用体使うと
>>76のコードがすっきりします。構造体と違うのは・・・
なんとエリアが一緒だからなんですねえ
typedef union{
unsigned char str[256];
unsigned int n;
}type;
int nightmare(void *data){
type s_type;
memcpy(s_type.str,data,sizeof(s_type.str));
printf("%s\n",s_type.str);
printf("%d\n",s_type.n);
return 0;
}
void main(int argc,char **argv){
int n=999999;
char *str="schizo";
nightmare(&n);
nightmare(&str[0]);
}
forkが美しくなくて絶望した。