yaottiの日記

2008-12-31

あけまして

01:45

ことしもよろしくおねがいします.


ハチロクスノボ部作りました.

雪山で遊びませんか!

AngelaAngela2013/09/23 09:34Heck yeah this is exclaty what I needed.

SezerSezer2013/09/24 19:08I'm not <a href="http://iufpxwbsi.com">wothry</a> to be in the same forum. ROTFL

MustafaMustafa2013/09/26 15:05Hats off to <a href="http://porkszjd.com">whevoer</a> wrote this up and posted it.

NickieNickie2013/09/27 13:01This is cratsyl clear. Thanks for taking the time! http://iajpvdxyu.com [url=http://qclgphbf.com]qclgphbf[/url] [link=http://mitxghe.com]mitxghe[/link]

2008-12-20

明日の忘年会について

16:28

明日のハチロク忘年会@関西は鍋です.冬ですね

5時に町屋スタジオに集まってから買い出しや食材準備したいので,

来れるひとはコメントか yaotti at gmail

まで連絡ください.


買い出しは鍋の醍醐味の1つですね.


あとwebカメラや包丁やまな板を持ってこれるようなすごい人がいたら持ってきてほしいです.

買い出しの都合上,参加締め切りは明日15時まででお願いします.

SixeightSixeight2008/12/21 01:04すいません。買い出し参加できません。
7時くらいになるかもしれないので、気にせず始めちゃってください。

Webカメラやっぱり反応しないので、持っていくけど使えない可能性大です><

BanjoBanjo2012/01/27 21:54At last, soomnee comes up with the "right" answer!

gkwzfdtgkwzfdt2012/01/28 02:1675D9cA <a href="http://koztvtqrdwvx.com/">koztvtqrdwvx</a>

aosgtcknjzdaosgtcknjzd2012/01/31 01:0048wjPb <a href="http://zraolokbpfwj.com/">zraolokbpfwj</a>

mmlycivwukjmmlycivwukj2012/02/01 03:11J6NsQn , [url=http://yamwtdbqgzbd.com/]yamwtdbqgzbd[/url], [link=http://odiogmagkkhn.com/]odiogmagkkhn[/link], http://oaspvhmhwono.com/

VickyVicky2013/09/24 02:18Dag nabbit good stuff you whrinepspappers!

ManoMano2013/09/25 20:42Great article but it didn't have evyerthing-I didn't find the kitchen sink! http://nhjglta.com [url=http://klwtfwz.com]klwtfwz[/url] [link=http://ntvkjsym.com]ntvkjsym[/link]

RidhampreetRidhampreet2013/09/27 02:05I'd <a href="http://wcvmnrpmy.com">vernute</a> that this article has saved me more time than any other.

SaraSara2013/09/27 14:15It's always a relief when someone with obvious extieprse answers. Thanks! http://ocfooolj.com [url=http://wxvqgmjohb.com]wxvqgmjohb[/url] [link=http://wlaxgeenco.com]wlaxgeenco[/link]

2008-12-04

ハチロク忘年会@関西

23:49

京都の町屋スタジオにて.

日時

12/21(日)19:00~

集合

12/21(日)18:30~18:45町屋スタジオ

場所

京都町屋スタジオ

参考:第4回お食事会@関西支部

no title



ネット完備.プロジェクタは借りられるのかな?

webカメラを持ってきてもらえると助かります.


d:id:gintacat,id:satzzに感謝.ありがとうございます.


大体の人数を把握しておきたいので(食事調達のため),行くかも,行けたら行くっていう人はコメントください.

gintacatgintacat2008/12/05 00:03プロジェクタは使えますよ。僕も覗きたいと思います。

satzzsatzz2008/12/05 00:04参加しますー

gintacatgintacat2008/12/05 00:04あ、大きな鍋3つと、ガスコンロ3つあります。

satzzsatzz2008/12/05 00:06鍋いいですね!!

yaottiyaotti2008/12/05 00:09>gintacat
ありがとうございます!
おお,鍋いいですね!

yang_yangyang_yang2008/12/05 00:3084世代ですが、是非参加したいです。

SixeightSixeight2008/12/05 07:28yaottiに嫌われる夢を見たのは僕が幹事をしなかったからか。
冷や汗かいて飛び起きた。

e_tsurue_tsuru2008/12/05 14:35お疲れ様ですー!参加します。

当日は多分一日空いてるので、鍋するなら手伝いますー!

cod-taracod-tara2008/12/06 12:54いくます!

nanto_vinanto_vi2008/12/06 23:14ある意味86世代なので参加したいです。

SixeightSixeight2008/12/07 00:02nanto_viさんだ!

y_nagatay_nagata2008/12/07 16:14行くかもです。
yaottiはじめ関西ハチロク世代の皆さまヨロシクです。m(_ _)m

hat-tunhat-tun2008/12/07 23:00初めてですが、お邪魔したいと思います!

LianLian2008/12/09 16:17まだ確定じゃないですが、行くつもりです。

ujihisaujihisa2008/12/14 14:56ぬおーその日は東京だ、ざんねん> <

y_nagatay_nagata2008/12/15 22:34すいません、別のイベントが入りそうなので、
今回は参加を見送らせてさせていただきます。

またの機会に…汗 ;-<

i6takahki6takahk2008/12/17 20:29僕も初めてですが、参加したいと思います。よろしくです。

e_tsurue_tsuru2008/12/18 14:13ごめんなさい、急用で参加できなくなりました。
直前の変更で申し訳ない・・・><

LianLian2008/12/20 22:09申し訳ありませんが、私も参加できそうにありません...
また、次の機会に宜しくお願いします><

SunnySunny2011/09/09 21:35Gosh, I wish I would have had that information erialer!

kmnbnbkmnbnb2011/09/09 23:45ffnsGf <a href="http://dxrmjfshdntr.com/">dxrmjfshdntr</a>

pbvnrlpbvnrl2011/09/10 21:041BXqpo , [url=http://cojprbjkfjrr.com/]cojprbjkfjrr[/url], [link=http://fwxgypxsbzaw.com/]fwxgypxsbzaw[/link], http://ixcaibcvneqv.com/

nadyapahiwpnadyapahiwp2011/09/12 00:52WK18FM <a href="http://ckmxymusorno.com/">ckmxymusorno</a>

fhduqhdzfhduqhdz2011/09/12 20:44dtyiam , [url=http://kblhgxyouqqh.com/]kblhgxyouqqh[/url], [link=http://muhiljrvappt.com/]muhiljrvappt[/link], http://ppvvxcatlgwd.com/

2008-06-29scheme.g

皆参加するとよいよ!!

schemeグループ

PeggyPeggy2012/01/27 15:24Smart thkinnig - a clever way of looking at it.

nwuzlylrzwnwuzlylrzw2012/01/28 02:04uMPaCL <a href="http://ctjdpshzrqyr.com/">ctjdpshzrqyr</a>

jrvyfnjrvyfn2012/01/29 01:19msN13h , [url=http://lhhkbwxwapjq.com/]lhhkbwxwapjq[/url], [link=http://ptsfjdnpcxqf.com/]ptsfjdnpcxqf[/link], http://kgjmaheuakyn.com/

lhdmpwyjlhdmpwyj2012/01/31 01:52zKog1P <a href="http://aopuizhnkcsj.com/">aopuizhnkcsj</a>

qbrgehlqbrgehl2012/02/01 00:56ibOIfb , [url=http://ufpqxyhqrazd.com/]ufpqxyhqrazd[/url], [link=http://pkzuctznxnqy.com/]pkzuctznxnqy[/link], http://lbptfcmfdcsx.com/

2008-05-30

書き直し

01:58

twitterやコメントでたくさん反応をもらったので書き直しました。

ありがとうございます。



格納する変数はintではなくcharで。

K&Rは今のとこ全部intで処理してるな…なんでだろ。


あと本ではポインタが出てきていないので一応配列で書きました。

でも仮引数に配列はよくないみたい。

参考:

http://blog.studiohff.net/200805/post_358.html

http://d.hatena.ne.jp/yuyarin/20080531/1212161875


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

/* 読み込む最大の長さ */
#define MAX_INPUT_LENGTH  10

void escape(char s[], char t[]);

int main(int argc, char *argv[])
{
    int i, j;
    char s[MAX_INPUT_LENGTH+1], t[MAX_INPUT_LENGTH*2+1];

    printf("type characters less than %d.\n", MAX_INPUT_LENGTH);

    /* printf("size:%d\n", sizeof(s)/sizeof(char)); */
    /* ->11 */
    /* EOFに到達するorMAX_INPUT_LENGTH分まで読む */
    i = 0;
    while((s[i] = getchar()) != EOF && i < MAX_INPUT_LENGTH) {
	++i;
    }
    /* 文字列の最後 */
    s[i] = '\0';
    escape(s, t);
    printf("%s",t);
    printf("\nend\n");
    exit(0);
}


void escape(char s[], char t[]) {
    int i, j;
    /* printf("s: %d, t: %d\n", sizeof(s), sizeof(t)); */
    /* -> s: 4, t: 4 */
    /* 仮引数を配列にしていてもポインタ扱い */

    for (i = 0, j = 0; s[i] != '\0'; ++i) {
	switch (s[i]) {
	case '\t':
    /* strcpyを使った方がきれいに書ける */
    /* 追記 */
    /* strcpy→strcat */
	    t[j++] = '\\';
	    t[j++] = 't';
	    break;
	case '\n':
	    t[j++] = '\\';
	    t[j++] = 'n';
	    break;
	default:
	    t[j++] = s[i];
	    break;
	}
    }
    /* 文字列の最後 */
    t[j] ='\0';
}

これでよいかな。

@heppoko

C/C++ ではポインタや配列を関数に渡す際には必ず一緒にサイズを渡すようにする、というのが習慣になってるからなあ。

ほほう。


Cのかきかた

23:22

とりあえず動くんだけど妥当な書き方なのかわからんので貼ってみる。

「ここ変な書き方してるよ!!」とか突っ込み入れてもらえると嬉しいです。

forまわりとか配列初期化とか。(そもそも配列て使うまえに初期化すべきなのか



mainの中に定数入れちゃってるのはキニシナイ

K&R 3-2
改行文字やタブ文字を\nや\tという文字そのものに変えてコピーする関数escape(s, t)を書け

//参照しないなら初期化は不要(@t33f)

//するなら'\0'で(@tyoro)

//これだとtの10,12,14,16,18が初期化されない(id:Kiyoya)

#include <stdio.h>

int escape(int s[], int t[]);

int main(int argc, char *argv[])
{
    int i, j;
    int s[10], t[20];

/*
    for (i = j = 0; i < 10; ++i, ++j)
	s[i] = t[i] = t[++j] = 0;
        //初期化するならこっち(×)
	s[i] = t[i] = t[j*2] = 0;

*/    
    printf("type characters less than 10.\n");
    i = 0;
    while((s[i++] = getchar()) != EOF)
	;
    if(!escape(s, t))
	printf("the length of first arg is too long!!\n");
    for (i = 0; t[i] != EOF; ++i)
	printf("%c",t[i]);
    printf("\nend\n");
    return 0;
}


int escape(int s[], int t[]) {
    int i, j;
    /* 5/31 00:24追記 */
    /* 逆… */
    /* コピー元よりコピー先が小さいときにエラーという意図 */
    //if (sizeof(s) < sizeof(t)) {    
    if (sizeof(s) > sizeof(t)) {
    	return 0;
    }
    for (i = j = 0; s[i]; ++i, ++j) {
	switch (s[i]) {
	case '\t':
	    t[j++] = '\\';
	    t[j] = 't';
	    break;
	case '\n':
	    t[j++] = '\\';
	    t[j] = 'n';
	    break;
	default:
	    t[j] = s[i];
	    break;
	}
    }
    return 1;
}


お食事会

23:22

もうすぐお食事会ですね!!

LTとかやったことないけどがんばる。

きっちりやる感じではなさそうなのでちょうど練習にいいかも。


メンバー的にEmacs使いが少なそうなのでそれについて語ろうかな。

vivim使いがEmacsを使うべき10個の理由」みたいな。

そして「それvivimでもできるよ」などとdisられる

KiyoyaKiyoya2008/05/30 23:37s[i] = t[i] = t[++j] = 0; って、sとtの初期化をやってるんだよね?
これだとtの10,12,14,16,18が初期化されないような。

fd0fd02008/05/30 23:41escape() 内の sizeof(s) < sizeof(t) の意図は何でしょう?
常に false になる気がします。

KiyoyaKiyoya2008/05/30 23:44sizeof(s) < sizeof(t) は常にtrueかな。でも趣旨としては sizeof(s) * 2 == sizeof(t) とかの方が良いような。

jj1bdxjj1bdx2008/05/30 23:51そもそも文字列は char の配列にすべき

条件判定と ++ 演算子は分けないと混乱する

for ( i = j = 0, ... → for ( i = 0, j = 0, ...

if, while や for では面倒でも {} を使え

main()からは return しないで exit() を使うべし

この手の文字列処理はそもそも配列じゃなくてポインタで書いたほうが後々楽

文字列関連のstrncpy()とか参考にすべし

yuyarinyuyarin2008/05/30 23:53常にfalseです>int escape(int s[], int t[]) { if (sizeof(s) < sizeof(t)) {

KiyoyaKiyoya2008/05/30 23:55>常にfalse
あ、そうか。これ引数で渡してるんだ。
CこわいよC。

hajimepghajimepg2008/05/31 00:35ついったーから来ました。
自分なりに書いてみました。

http://blog.studiohff.net/200805/post_358.html

tsupotsupo2008/05/31 03:19フォローアップ記事を書きました。
http://watcher.moe-nifty.com/memo/2008/05/re_c_38b6.html

jj1bdxjj1bdx2008/05/31 07:31難読化したコードを残しておくのもいまいちだし,かつ s と t の扱いが逆だったので,課題通りに直したコードを記事にして置いておきました.この手のことって,意外に書籍にはちゃんと書かれてないですねえ.

http://d.hatena.ne.jp/jj1bdx/20080531/p1

SymonaSymona2011/05/07 14:26Home run! Great sulggnig with that answer!

hskoqjdweuthskoqjdweut2011/05/08 11:11LwgaMx <a href="http://ywjxuypqzgfg.com/">ywjxuypqzgfg</a>

wnqjitlpakkwnqjitlpakk2011/05/09 12:53uZJyjf , [url=http://gpdpisvjdgva.com/]gpdpisvjdgva[/url], [link=http://yfmqvnytsefu.com/]yfmqvnytsefu[/link], http://iolvtroboyje.com/

wgkhlnhzwgkhlnhz2011/05/10 12:27efTMcK <a href="http://kruppvhavcei.com/">kruppvhavcei</a>

mkypjjmkypjj2011/05/15 11:26OmdmsQ , [url=http://jdhawrzxzdpq.com/]jdhawrzxzdpq[/url], [link=http://pljegvxkfjwo.com/]pljegvxkfjwo[/link], http://zzhagljzundl.com/