演習8-3 K&R プログラミング言語C
演習8-3 この _flushbuf と my_putc だと、fp->cnt が 0 未満にならずに終了してしまう場合に、どうしてもデータがバッファに残ったまま書き出されない状態になってしまう。 /* _flushbuf : 出力バッファを書き出す * ファイルが書き込み用にオープンされていなければ即座に MY_EOF を返す */ int _flushbuf(int c, MY_FILE…続きを読む
演習8-3 この _flushbuf と my_putc だと、fp->cnt が 0 未満にならずに終了してしまう場合に、どうしてもデータがバッファに残ったまま書き出されない状態になってしまう。 /* _flushbuf : 出力バッファを書き出す * ファイルが書き込み用にオープンされていなければ即座に MY_EOF を返す */ int _flushbuf(int c, MY_FILE…続きを読む
演習8-2 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #define MY_NULL 0 #define MY_EOF (-1) #define MY_BUFSIZ 1024 #define MY_OPEN_MAX 20 /* 一時に開け…続きを読む
演習8-1 p208 の syscalls.h のインクルードの代わりに unistd.h をインクルードする。 参考:ふつうの Linux プログラミング p80 ふつうのLinuxプログラミング Linuxの仕組みから学べるgccプログラミングの王道 posted with amazlet at 10.03.11 青木 峰郎 ソフトバンククリエイティブ 売り上げランキング: 26006 Ama…続きを読む
Rails によるアジャイルWebアプリケーション開発 第3版 の『第9章 タスク D : Ajax の追加』の自由課題『カート内の項目の数量を減らす方法』について。 まず、Ajax を使わずにカートの商品を減らすボタンを実装する。 これは、以下の4つの手順で行なっていく。 ビューのカートの商品部分に削除ボタンを追加する コントローラに delete_from_cart メソッドを追加する カート…続きを読む
Rails によるアジャイルWebアプリケーション開発 第3版 の『第9章 タスク D : Ajax の追加』の自由課題『カート内の新しい項目に、別の視覚効果を付ける方法』について。 最初にアイテムが追加される際にカートが blind_down で表示される効果と、既に表示されている項目の数量が増加する際の highlight 効果はそのまま残して、カートにアイテムが追加される場合(数量の増加では…続きを読む
Rails によるアジャイルWebアプリケーション開発 第3版 の『第9章 タスク D : Ajax の追加』の自由課題『カートを空にする際に blind_up を使う方法』について。 フォームボタンを Ajax に対応させる app/views/store/_cart.html.erb ファイルの button_to で作られるフォームボタンを form_remote_tag で作られる Aja…続きを読む
render メソッドに :partial パラメータを渡すことでパーシャル(部分テンプレート)をレンダリングする。 :partial パラメータ :partial パラメータの値はパーシャルの名前を指定する。 パーシャルのファイル名はパーシャルの名前の先頭にアンダースコアを付加したものとなる。 cart_item : パーシャル名 _cart_item.html.erb : パーシャル・ファイル…続きを読む
演習7-9 スペースを節約する isupper #include <stdio.h> int my_isupper(unsigned char); int main(void) { char c1 = ‘d’; char c2 = ‘D’; printf("%c isupper? => %d\n", c1, my_isupper(c1)); printf(&q…続きを読む
演習7-8 問題文の『ページ』というのが何のことなのかよくわからない。 とりあえず、ファイルを印字する前にファイル名とファイル番号(ページ番号)を見出しとして印字するようにした。 #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { char c; char *prog = arg…続きを読む
演習7-7 #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAXLINE 1024 int my_getline(char*, int); /* find : 最初の引数にあるパターンとマッチする行を表示する */ int main(int argc, char *argv[…続きを読む