Tuesday, May 19, 2009

const

■ 下記の書き方は同じ意味,これでxは定数で,別の値を代入できなくなる.
int const x = 200;
const int x = 200;

■ constポインタは少し厄介
const char* p1 = "aaa"; // p1, p2が指す内容を変更できないが,p1, p2は変更可能
char const* p2 = "bbb";

char* const p3 = "ccc"; // p3は変更できないが,指す内容は変更できる

const char* const p4 = "ddd"; // p4と指す値も両方変更できない

*の左にがある場合は指す内容を変更できないが,ポインタは変更可能
*の右に*がある場合は指す内容を変更できるが,ポインタは変更できない
両方がある場合は値もポインタも変更できない

■ const なクラスメンバー
コンストラクタでOBJを作成するときには必ず初期化しないといけない

■ クラスの関数で,属性を変更しないものは const をつけろ!

Friday, April 03, 2009

DIP-IC用テストクリップ


[STC-20A] DIP-IC用テストクリップ

Wednesday, April 01, 2009

書見台

これ,いいなぁ〜,今までほしかったです.

◎ カール ブックスタンダー NO.820 ブラック NO.820-K ブラック
◎ セキセイ 書見台【グレー】 BH001-62


Tuesday, March 31, 2009

Rawmode Serial port programming

#include <stdio.h>
#include <unistd.h>
#include <termios.h>
#include <ctype.h>
#define QUIT_CHAR 0x04 // Ctrl+D --> quit

struct termios CookedTermIos; // for cooked mode
struct termios RawTermIos; // for raw mode

int main(void)
{
char c;
// save present terminal setting
tcgetattr(STDIN_FILENO, &CookedTermIos);

// Create raw mode terminal setting
RawTermIos = CookedTermIos;
cfmakeraw(&RawTermIos);

// Set
tcsetattr(STDIN_FILENO, 0, &RawTermIos);

while((c = getchar()) != QUIT_CHAR )
{
if(isprint(c)){
printf("you push key: ");
putchar(c);
putchar('\n');
}else{
printf("control key <%02X> \n" , c);
if(c == '\n') fputs("\r\n", stdout);
}
}

tcsetattr(STDIN_FILENO, 0, &CookedTermIos);
putchar('\n');

return 0;
}

Monday, March 30, 2009

集積回路

PIN数は14ピンで片側に7ピンずつ並んでいます。このような形状のICをDIP(Dual In Line Package)と呼びます。(DILと言うこともあるみたいです)
これに対してピンが一列のみのものをSIP(Single In Line Package)と呼びます。

http://webos-goodies.jp/archives/51006356.html