cwnicol programming

プログラミング関連の投稿をすこしだけ

2009-01-01から1年間の記事一覧

2重ループを抜ける

(1)フラグを用いる。 while(XXX){ /* ループ1 */ bool bFlg1 = false; bool bFlg2 = false; while(XXX){ /* ループ2 */ /* hogehoge */ if(ZZZ){ /* ループ1でcontinueしたい現象が ループ2内で発生 */ bFlg1 = true; break; } if(ZZZz){ /* ループ1でbreak…

windows コマンド

net view 自分が参加しているドメインで使用可能なサーバ一覧(?)net view /domain 自分が参加しているネットワーク内に存在する、ドメイン 及びワークグループ一覧 - netstat アクティブなTCPコネクション情報一覧netstat -b ローカルの該当ポートを使用…

fopen()のテキストモード、バイナリモード

これらのモード指定はWindowsでfopen()を使用する際に 考慮するものだ。 Linuxでモード指定は必要ない。なぜならばLinuxにおける 「テキストファイルの改行コード」と「プログラム内部の改行コード」が 一致しているからだ。(共に0x0a) OS テキストファイル…

C++ソースから、Cで作成したライブラリをリンクする方法

■概要 何も考えずに下図のような構成にすると、 C++ソース(下図ではA.o)から、Cで作成したライブラリ(下図ではC.o)を リンクできない。 ■原因 関数呼び出し1で、探している名前("関数Z@sjadfpioa"(*1))と 実際の名前("関数Z")が異なるので、関数Zを探し…

データ構造が配列になっていない場合の対処方法

データ構造が配列になっていれば、ループを使用して、 書けるが、配列構造になっていない場合には、変数の 数だけ関数を書かなければならない。 →マクロを使用してなんとかならないか(←出発点) (追記)マクロのほかに、ワーク用領域(配列を使って定義)…

C言語 ファイルサイズ(バイト)取得

GetFileSize ■注意点 fpos_t型は、環境により実装が異なるらしいので、 GetFileSize関数でファイルサイズ取得後は、 適宜環境に合わせてposを使用のこと。 ■fell()かfgetpos()のどちらを使用するかについて fell()を使用すると、long型でファイルサイズを取…

gdb core デバッグ

limit[リターン]coredumpsize unlimited → coreを生成する coredumpsize 0 kbytes → coreを全く生成しない limit coredumpsize unlimited デバッグ手順>gdb プログラム coreファイル

c言語 qsort

#include<stdio.h> #include<stdlib.h> #define SIZE 10 typedef struct{ int i; char str[5]; } hoge; int Comp(const void *, const void *); void print(hoge *); // メイン int main(){ hoge shoge[SIZE] = { {3, "abc"}, {1, "ABC"}, {9, "uyr"}, {2, "4gy"}, {4, "stg"}, </stdlib.h></stdio.h>…

Microsoft Loopback Adapterを使う。

Virtual PC上のLinux(ゲストOS)とWindows(ホストOS)で通信したい。 以下Microsoft Loopback Adapterを使用してそれを実現。 ホストOS : Windows XP ゲストOS : Linux(RHEE9)[ ]はどちらのOSで行うかを示す。 (1)Microsoft Loopback Adapterをインストール[ホ…

float型をhtonl(), ntohl()

int main(){ int i; char *p; float f = 1; for(i = 0;i < sizeof(float);i++){ p = (char *)&f; printf("%02X ", (char)*(p + i)); } putchar('\n'); f = htonl(f); //f = htonl(*(long *)&f); for(i = 0;i < sizeof(float);i++){ p = (char *)&f; printf("…

リトルエディアン ビッグエディアン 判別プログラム

int main(){ short s; char *cp; s = 1; cp = (char *)&s; if(*cp){ printf("リトルエディアン\n"); }else{ printf("ビッグエディアン\n"); } return 0; } shortは上図のように2バイトを使用する。 ・リトルエンディアンの場合には、低位バイトから値を格納…

ソフトウェア 視点

ソフトウェアに対する視点は2つある。 一つは開発者の視点。 もう一つは利用者の視点。 ソフトウェア開発者には、開発者の視点だけではなく 利用者の視点も必要。 コーディングは開発者の視点で、 テスト項目は利用者の視点で作る?