5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

俺のC言語勉強日記

1 :デフォルトの名無しさん:2008/06/18(水) 14:09:08
とりあえずC言語勉強するから記録してくね。

2 :デフォルトの名無しさん:2008/06/18(水) 14:11:56
─── 始めてきた方への注意 ───────

このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。        
                       
アイと研究員とのやり取りに利用するスレッドなので
関係者以外は書きこまないで下さい。       
                               
                      霊長類研究所

3 :デフォルトの名無しさん:2008/06/18(水) 14:16:16
ちょwwww

4 :1 ◆DqtNhxxBr6 :2008/06/18(水) 14:21:45
トリテスト

5 :1 ◆Tje8EF4GWs :2008/06/18(水) 14:24:33
トリップテスト。
さてまずHello worldからだよね。

6 :1 ◆DqtNhxxBr6 :2008/06/18(水) 14:25:38
まずは俺のフェニックス初号機のスペック

OS:Linux
ディストリ:Mandriva Linux
CPU:Pen4 1.8G
Mem:775MB
gcc:4.2.3

こんな感じかな

7 :アイ:2008/06/18(水) 14:25:50
○ 始めてきた方への注意
× 初めてきた方への注意

8 :1 ◆Tje8EF4GWs :2008/06/18(水) 14:29:02
あんた誰?
あんたが俺ならハード仕様でなくまずこの板的にプログラムソースを出すよ。

9 :1 ◆DqtNhxxBr6 :2008/06/18(水) 14:38:26
とりえあずHelloWorldはもう完了してたんだよね。

1 #include <stdio.h>
2
3 int main () {
4 >---printf("Hello World!\n");
5 >---return 0;
6 }

ちなみにエディタはVim7


10 :アイ:2008/06/18(水) 22:02:07
#gcc hello.c
#./a.out


11 :デフォルトの名無しさん:2008/06/18(水) 22:29:41
コンバトラは何使ったらいいですか??

12 :デフォルトの名無しさん:2008/06/18(水) 23:08:32
      r;ァ'N;:::::::::::::,ィ/      >::::::::::ヽ
.      〃  ヽル1'´        ∠:::::::::::::::::i
       i′  ___, - ,. = -一   ̄l:::::::::::::::l
.      ! , -==、´r'          l::::::/,ニ.ヽ
      l        _,, -‐''二ゝ  l::::l f゙ヽ |、 ここはお前の日記帳じゃねえんだ
        レー-- 、ヽヾニ-ァ,ニ;=、_   !:::l ) } ト
       ヾ¨'7"ry、`   ー゙='ニ,,,`    }::ヽ(ノ  チラシの裏にでも書いてろ
:ーゝヽ、     !´ " ̄ 'l,;;;;,,,.、       ,i:::::::ミ
::::::::::::::::ヽ.-‐ ト、 r'_{   __)`ニゝ、  ,,iリ::::::::ミ
::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ-,、:::::`"::::::::::::::;゙ ,  な!
:::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::///
:::::::::::::::::::::::::::::l ヽ;:::::::::::::::::::::::::::::::::::::::::::/ /
::::::::::::::::::::::::::::::! :|.\;::::::::::::::::::::::::::::::/ /

13 :1 ◆DqtNhxxBr6 :2008/07/01(火) 07:36:47
10/3やって3.3333ってやりたいんだができん

14 :デフォルトの名無しさん:2008/07/01(火) 07:46:19
ふぅできた

1 #include <stdio.h>
2
3 int main (){
4 >---int intImp = 10;
5 >---int intClk = 3;
6
7 >---double dblAns;
8
9 >---dblAns = (double) intImp / intClk;
10
11 >---printf("%f\n",dblAns);
12 >---return 0;
13 }

15 :1 ◆DqtNhxxBr6 :2008/07/01(火) 09:19:06
1 #include <stdio.h>
2 #include <math.h>
3
4 /**********************************
5 * コサインカーブ
6 **********************************/
7
8 int main () {
9 >---int i, j, genbun = 5;
10 >---double rad, cosvalue, pai = 3.14;
11
12 >---//create header
13 >---printf("角度\tcos値\tイメージ\n");
14 >---for ( i = 0; i < 60; i++) {
15 >--->---printf("-");
16 >---}
17
18 >---for ( i = 90; i >= 0; i -= genbun ) {
19 >--->---rad = ( pai * i) / 180;
20 >--->---cosvalue = cos(rad);
21 >--->---printf("\n%2d\t%f ", i, cosvalue);
22 >--->---for ( j = 1; j <= (int)(cosvalue * 40); j++) {
23 >--->--->---printf("*");
24 >--->---}
25 >---}
26 >---printf("\n");
27 >---return 0;
28 }

16 :デフォルトの名無しさん:2008/07/01(火) 11:55:22
日記にソース貼りつけるの?
Tabみにくいからファイルうpの方がいいと思うよ

17 :1 ◆DqtNhxxBr6 :2008/07/01(火) 17:48:55
>>16
基本しかやってないからファイルうpはいいや。
数百、数千行レベルになったらする。

----今日のメモ-----
メモリには1バイト(8ビット)づつ番地が割り振られている。
1番地=1バイト=8ビット=256通りの情報
100番地に154を置くということは、100番地のメモリを10011010にするということ。

2バイト使用すると256×256=65536通りの情報を扱える。

size of char = 1 バイト
size of short = 2 バイト
size of int = 4 バイト
size of unsigned int = 4 バイト
size of float = 4 バイト
size of double = 8 バイト
size of long double = 12 バイト
size of size_t = 4 バイト



18 :1 ◆DqtNhxxBr6 :2008/07/01(火) 17:49:28
----今日のメモ2-----

各変数を宣言するとメモリ情報に上記分の番地が確保される。
int の場合は4バイトなので番地が4つ分。

変数の頭に&をつけるとアドレスになる。 a → &a
配列の名前は配列の先頭アドレスになる。 a[] → aがアドレス
アドレスとprintfするときは%pをする。

ポインタへはアドレスを代入する。
アドレスの値を参照するには*を着ける。
配列の先頭アドレスが代入されたポインタは*(p + 1)で要素の値を参照できる。
(○○型のポインタに1加えることは、○○型の大きさだけアドレスを1つ進める。)
a[n] = *(a+n)

文字は数値である。
文字列の式の値は先頭のアドレスになる。
文字列の最後は\0で終わる。

19 :デフォルトの名無しさん:2008/07/01(火) 18:45:39
char1バイト以外の変数のサイズは環境依存な

20 :1 ◆DqtNhxxBr6 :2008/07/01(火) 22:09:27
>>19
らしいね。コンパイラによって違ってくるってどっかのサイトにあった。

//ボインタの理解
1 #include <stdio.h>
2
3 int main () {
4
5 >---int intA;
6 >---int *pintA;
7
8 >---pintA = &intA;
9
10 >---printf("%p\n",&intA);
11 >---printf("%p\n",pintA);
12
13 >---return 0;
14 }

結果
0xbf8ab7dc
0xbf8ab7dc

同じアドレスが入ってる。

21 :1 ◆DqtNhxxBr6 :2008/07/01(火) 22:13:55
//ポインタを使った値の参照
1 #include <stdio.h>
2
3 int main () {
4
5 >---int intA;
6 >---int *pintA;
7
8 >---intA = 10;
9
10 >---pintA = &intA;
11
12 >---printf("%d\n",intA);
13 >---printf("%d\n",*pintA);
14
15 >---return 0;
16 }


22 :デフォルトの名無しさん:2008/07/01(火) 22:23:58
1 #include <stdio.h>
2
3 //ポインタ変数へ値を代入する
4 int main () {
5
6 >---int intA;
7 >---int *pint;
8
9 >---intA = 10;
10
11 >---pint = &intA; //アドレスを代入しないとコンパイルエラーになる
12
13 >---*pint = 20;
14
15 >---printf("%d\n",*pint);
16
17 >---return 0;
18 }

結果
20

23 :デフォルトの名無しさん:2008/07/01(火) 22:30:41
そろそろアラインメントについても勉強しときなさい

24 :1 ◆DqtNhxxBr6 :2008/07/01(火) 23:31:39
>>23
アラインメント?(・ω・)??って思ってググったら速攻で思考停止したw

大まかな流れで
ポインタ・構造体・共有体の理解

ファイルの入出力

Linuxプログラミング

ネットワークプログラミング

今までの成果を元にWEBアプリを開発

日本中でヒット

中国・韓国でもヒット

日・中・韓のネットユーザーが友好的な関係になる

ってスケジュールになってるからアラなんとかはもう少し後だね。

25 :デフォルトの名無しさん:2008/07/01(火) 23:48:41
今までの成果を元にWEBアプリを開発

日本中でヒット

あたりからのスケジュールが急に壮大

26 :デフォルトの名無しさん:2008/07/04(金) 05:03:02
>>1みたいな糞スレをたてるのだけが生き甲斐の人生なら
死んだほうがましだな

27 :デフォルトの名無しさん:2008/07/05(土) 17:55:27
>>26
とりあえず通報してみました。

28 :デフォルトの名無しさん:2008/07/07(月) 22:59:45
日記というのなら、毎日書きなさい

29 :デフォルトの名無しさん:2008/07/07(月) 23:13:26
飽きたんだろ
漏れもよく飽きる

30 :デフォルトの名無しさん:2008/12/26(金) 12:31:51
俺も始めたばかりだからこのスレおさらいになって勉強になる
毎日書いて

31 :デフォルトの名無しさん:2008/12/26(金) 16:58:27
>>30
失せろ

32 :デフォルトの名無しさん:2008/12/26(金) 18:24:30
>>31
あぁんひどい...

33 :デフォルトの名無しさん:2008/12/28(日) 17:51:14
ヒットするような企画持ってるならコードは誰かに書いてもらおうぜ
>>1はお勉強に飽きちゃったんだからよぉ

34 :デフォルトの名無しさん:2009/01/07(水) 22:44:53
while(1){
printf(">>33\nお前が書け");

if(>>33が書く)
break;
}

35 :デフォルトの名無しさん:2009/01/26(月) 14:45:43
俺がこの手のスレ立てたら3日で規制&スレスト入ったけどな

36 :デフォルトの名無しさん:2009/02/02(月) 06:49:52
>>34のおかげでbreak文がわかりました。本当にありがとうございました(笑)

37 :デフォルトの名無しさん:2009/02/14(土) 17:30:18
>>1の超絶成長日記「初めての○○編」

2009年2月14日
C言語の本を開いた「ドサリッ」
重い、これが「サルでも分かるC言語入門書」の重みか…
ま、気を取り直してページを開いてみる、「ようこそC言語の世界へ!ここれはまず…
長い!果てしなく長い、前書きですでに眠くなってきた、今夜はもう寝よう、ホコリをかぶりし棚の飾りにならぬよう

38 :デフォルトの名無しさん:2009/03/09(月) 16:39:25
9ヶ月ぶりに再会しますね。^^

//アドレス計算について
//各型のアドレスに数字を加算するとその型のバイト分だけアドレスが加算される。
//例えばint型に+1は4バイト
#include <stdio.h>

int main (int argc, const char * argv[]) {
int a = 10;
printf("%p\n",&a);
printf("%p\n",&a + 1); //アドレス先の中の値は関係なく、ただアドレスの移動計算をしている
printf("%p\n",&a + 2); //*を使ってアドレスの中の値を参照する事ができる。
}
0xbffff79c
0xbffff7a0
0xbffff7a4

39 :デフォルトの名無しさん:2009/03/09(月) 20:29:26
intのサイズは環境依存。

40 :デフォルトの名無しさん:2009/03/11(水) 01:12:06
             /)
           ///)
          /,.=゙''"/
   /     i f ,.r='"-‐'つ____   こまけぇこたぁいいんだよ!!
  /      /   _,.-‐'~/⌒  ⌒\
    /   ,i   ,二ニ⊃( ●). (●)\
   /    ノ    il゙フ::::::⌒(__人__)⌒::::: \
      ,イ「ト、  ,!,!|     |r┬-|     |
     / iトヾヽ_/ィ"\      `ー'´     /

41 :デフォルトの名無しさん:2009/03/19(木) 03:24:37
ミクと学ぶC言語

42 :デフォルトの名無しさん:2009/03/22(日) 15:54:10
なんぞこのスレwww

12 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)