タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

ProgrammingとCとprogrammingに関するjjzakのブックマーク (242)

  • PukiWiki - Emacs/c-mode

    トップ Emacs Linuxメモ Cygwinメモ gnuplot+ リンク アクセス状況 最新の20件2008-03-30zhangpengc 2007-12-30simple 2007-12-14gongyesheji 2007-10-31Emacs/etc FrontPage Cygwinメモ/PostgreSQL 2006-03-03gnuplot3.8日語化・機能拡張パッチ 2005-05-20InterWikiName 2004-04-20リンク 2004-04-16Cygwinメモ/sshd 2004-04-15Cygwinメモ/xinetd Cygwinメモ/init Linuxメモ/bash Emacs/c-mode 2004-04-03RenameLog MenuBar アクセス状況 Emacs 2004-04-02Emacs/カーソル移動 Linuxメモ/YaTe

  • プログラミングWiki - CUnit

    Cのためのユニットテスティングフレームワーク SF.netの方じゃなくてこっち 特長は,以下の通り. テストは共有ライブラリにする テストを起動するプログラム(CUnitTester)がある CUnitTesterは指定したディレクトリの下にあるlibtest_*.soという共有ライブラリをロードしてテストを実行する ちなみに,環境変数TERMが?termでない時はエスケープシーケンスを使わないように改造していたりします.パッチはこちら.cunit-0.6.8-term.diff ついでに,UTEST_ASSERT_*(UTEST_ASSERT_EQUAL_INTとか)を追加するパッチはこちら. cunit-0.6.8-term-and-assersions.diff CUnitTesterのために,パスに~h12j37/local/binを加えます. 例えば,~/.cshrcを以下のよう

  • C言語・C++言語用テスティングフレームワーク - Cutter

    最新リリース 2019-09-13にリリースされた1.2.7が最新です。 [ダウンロード] [変更点] Cutterとは Cutterは書きやすさ・デバッグのしやすさを重視したC言語・C++言語用のテスティングフレームワークです。メンテナンスしやすく、利用効果の高い単体テスト(ユニットテスト)の開発を支援します。 また、テストを苦痛ではなく、楽しいものにすることも重視しています。スクリーンショットはテスト結果の通知機能を利用している様子です。文字としてテストのパス・失敗を伝えるだけではなく、視覚的にも通知することで、テスト結果をわかりやすくします。わかりやすいので、頻繁にテストを実行したくなります。この機能はnotify-sendコマンド(Linuxや*BSDなどの場合)またはgrowlnotifyコマンド(macOSの場合)を利用します。 動作環境 CutterはDebian GNU/L

  • C言語・C++言語用テスティングフレームワーク - Cutter

    最新リリース 2019-09-13にリリースされた1.2.7が最新です。 [ダウンロード] [変更点] Cutterとは Cutterは書きやすさ・デバッグのしやすさを重視したC言語・C++言語用のテスティングフレームワークです。メンテナンスしやすく、利用効果の高い単体テスト(ユニットテスト)の開発を支援します。 また、テストを苦痛ではなく、楽しいものにすることも重視しています。スクリーンショットはテスト結果の通知機能を利用している様子です。文字としてテストのパス・失敗を伝えるだけではなく、視覚的にも通知することで、テスト結果をわかりやすくします。わかりやすいので、頻繁にテストを実行したくなります。この機能はnotify-sendコマンド(Linuxや*BSDなどの場合)またはgrowlnotifyコマンド(macOSの場合)を利用します。 動作環境 CutterはDebian GNU/L

  • CCUnit クックブック

    これは CCUnit を使い始めるにあたって、 理解の助けとなるような短いクックブックです。 [see also English documents] シンプルなテストケース CCUnit を使ったテストは自動的に実行することができます。 CCUnit のテストは簡単にセットアップすることができ、 一度テストを書いてしまえば、 いつでもプログラムの品質を信頼できるものに保つことができるでしょう。 簡単なテストを作るには、次のようにします。 テスト関数を作ります。 値をチェックしたい場合は、 CCUNIT_ASSERT(bool) を呼び出して、 テストが成功するなら真を返すような真偽値を渡します。 ASSERT 関係のマクロは他にも ASSERT マクロにリストしてあります。 例えば、簡単な複素数のライブラリのテストを例にとってみましょう。 (ここで使用するサンプルプログラム は exam

  • 安藤のためのC言語テスティングフレームワークCUnit

    安藤のためのC言語テスティングフレームワークCUnit 『CUnit for Mr.Ando』は CppUnit-x をベースにしたC言語テスティングフレームワークです。 これは、C言語のソースコードを単体テストのために供給します。 "CUnit for Mr.Ando" is CppUnit-x based C langage testing framework for Mr.Ando. It provide the C source code for unit testing. イントロダクション Introduction. JUnit は非常に強力なJava単体テストツールです。 しかしながら、多くのC言語技術者はJava言語を理解することができません。 JUnit is a very powerful Java simple unit test tool. However, man

  • ATMARK

    133.242.243.6 / HatenaBookmark/4.0 (Hatena::Bookmark; Analyzer)

    jjzak
    jjzak 2010/08/24
    C言語のマクロでC の例外処理機構もどきを作る
  • はじめに: Cutterリファレンスマニュアル - Cutter

    ソースコード: LGPLバージョン3またはそれ以降のバージョン (詳細: license/lgpl-3.txt ) です。 ドキュメントときのたんアイコン: LGPLとGFDLとクリエイティ ブ・コモンズ・ライセンスのトリプルライセンス。 glib-compatible/glibintl.h, glib-compatible/gregex.*, glib-compatible/gscripttable.h, glib-compatible/gsequence.*, glib-compatible/gstring.*, glib-compatible/gunicode.h, glib-compatible/guniprop.c: LGPLバージョン2.0またはそれ 以降のバージョン(詳細: glib-compatible/COPYING ) glib-compatible/pcre/: PC

    jjzak
    jjzak 2010/08/24
    [][][development][unittest]
  • 【インフォシーク】Infoseek : 楽天が運営するポータルサイト

    日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。

  • ホワット・ア・ワンダフル・ワールド gasでcrtを書く

    私は知識に何ものかを付け加え,また他の人々がより多くのものを付け加える手助けをした --- G.H.ハーディ 前回のコードをgas(GNU assembler)で書き直した。また、以下の点が異なる。 - gasはmasmのような高級な構文(invokeや.ifなど)を持っていないので、全てより低水準な表現で書き直されている。 ループなどをアセンブラで書くのは面倒だったので、Cで書ける部分はCで書いた。(crt.c) - 関数の戻り値をチェックしている。 - main()に渡されるargvの型を、wchar_t *argv[]ではなく、より標準的なchar *argv[]にした。 CommandLineToArgvW()で確保された、ワイド文字列の領域を、WideCharToMultiByte()でマルチバイト文字列に変換した後のargvで破壊的に更新することが合法なのかどうかは謎なのだが、

  • ホワット・ア・ワンダフル・ワールド Effective assembly language : 退避しなければならないレジスタを知りたい時は setjmp のソースを読もう.

    kosaki さんからコメントをいただきました. >> 壊しちゃいけないのが ebx, esi, edi, ebpとセグメントレジスタ ちなみに、壊しちゃいけないレジスタを調べるいちばんいい方法はsetjmpのソースを読むこと。 CPUによらず、こわしちゃいけないレジスタは保存してくれよるので、不慣れなCPUの時は参考になりますえ なるほど.というわけで,さっそく glibc-2.4 のソースを落としてきて,とりあえず glibc-2.4\sysdeps\i386\setjmp.S を開いてみた. /* Save registers. */ movl %ebx, (JB_BX*4)(%eax) movl %esi, (JB_SI*4)(%eax) movl %edi, (JB_DI*4)(%eax) /* スタックポインタ保存 */ leal JMPBUF(%esp), %ecx /* S

  • Ruby 遊び / 拡張 C ライブラリを作ってみる

    Mon, 25 Nov 2002 11:36:06 +0900 , 初稿 って? Ruby は、比較的簡単に C による拡張ライブラリが作れるらしいです。 拡張ライブラリというのは、要するに、Ruby から呼べる機械語のメソッド郡と考えていいんじゃないかと思います。つまり、Ruby だと処理速度がどうしても気になってしまう一部のクリティカルセクションを、これにより機械語で書き換える、ということができます。 というわけで、どれくらい簡単か、やってみましょう。 例 Ruby に従って、次の C プログラムを書きました。 #include "ruby.h" VALUE test(int n){ volatile int i; for(i=0;i<(FIX2INT(n));i++){ } return Qnil; } Init_test(){ rb_define_global_function(

  • Ruby用拡張ライブラリをCで作る

    Ruby用拡張ライブラリをCで作る Rubyは、C(あるいはC++)で書いたコードを動的(あるいは静的)にリンクして利用する事ができる。うまく使えば、Rubyで書くより高速な動作が期待できる。 たとえば、GUIライブラリである「Ruby/GTK」は、描画部分にCで書かれたライブラリを利用する事で、実用的な画面描画速度を確保している。 その、Ruby用拡張ライブラリをCで書く方法である。 ■ 拡張ライブラリ作成の流れ Rubyはオブジェクト指向言語である。オブジェクト指向言語におけるプログラムとは、基的にクラス定義である(と、少なくとも私は思っている)。そこで、ここではクラス定義に話を絞る。 メソッドの実体となる関数を定義する Init関数を作る rb_define_classで、新しいクラスを作る rb_define_methodで、クラスに1で作成したメソッドを追加する Makefil

  • C言語で、ruby用拡張モジュールを作成する方法 - ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き -

    C言語で、rubyの拡張モジュールを作成する方法について調べてみました。 とりあえず例として Sample という拡張モジュールを作成し Sample::sample() というメソッドをCで実装 してみました。 このSampleモジュールを使うと、以下のrubyのコードは require "sample" puts Sample::sample("test") コンソールに "test" と表示するようになります 拡張モジュールのソースコード Cで次のようなコードを書きます。 #include <ruby.h> static VALUE rb_sample_sample(VALUE obj, VALUE arg) { Check_Type(arg, T_STRING); return rb_str_new2(RSTRING_PTR(arg)); } void Init_sample()

    C言語で、ruby用拡張モジュールを作成する方法 - ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き -
  • http://morchin.sakura.ne.jp/generic/index.html

    Programmer's Gate /ジェネリックプログラミング入門 ジェネリックプログラミング入門 ジェネリックプログラミングというものが存在する。 C++で言えば、Templateの機能を使ってコードを汎用化、抽象化する方法である。 JavaやC#では、Genericsに当たる。 ここでは、C++Templateに焦点を当てて何ができるかを探ってみよう。 ジェネリックの基 TraitsとPolicy

    jjzak
    jjzak 2009/11/14
    [][][tutorial]ジェネリックプログラミング入門
  • libtorrent

    introduction libtorrent is a feature complete C++ bittorrent implementation focusing on efficiency and scalability. It runs on embedded devices as well as desktops. It boasts a well documented library interface that is easy to use. It comes with a simple bittorrent client demonstrating the use of the library. The main goals of libtorrent are: to be CPU efficient to be memory efficient to be very e

    jjzak
    jjzak 2009/11/14
    [][][p2p][opensource][api][bittorrent][library][code]
  • 再入不可能な関数を C で実装する - いやなブログ

    再入不可能な関数を C で実装する 一度実行したら二度と中身を実行できなくなる再入不可能な関数を C で実装してみます。通常、このような関数はシングルトンなどの静的なデータの初期化に使いますが、ここではデータについては考えないことにします。 static 変数をフラグに使う まずは最も単純な方法から見ていきます。次の関数は static 変数をフラグに使って再入を防いでいます。厳密に言えば関数そのものには入ってしまっていますが、ここで気にしないことにします。 void once(void) { static int entered; // 最初は 0 if (entered == 1) { // すでに入ったことがある場合は return; // すぐ出る } entered = 1; // 初回の場合のみ、何かを実行する } この方法はシングルスレッドのプログラムではうまく動きますが、マ

  • Cプリプロセッサメタプログラミングで、文字列系泥沼関数型プログラミング - 簡潔なQ

    今年の文化祭で書いた記事です。 - C言語といえば、いやなイメージ、過去の遺産といった感じがあるかもしれません。 C言語のネガティブな側面というと、やはりポインタやメモリ管理などが難しい、ということが思いつくかもしれません。 しかし、C言語のポインタは表記に騙されやすいだけで、仕組み自体は全く難しくありません。 文法も、どこぞのPerlC++と比べたら屁でもない単純さです。 実のところ、仕様が煩雑で難しいのは、Cプリプロセッサなのであります。 普段からあまり複雑な使いかたをしないから気づかないかもしれませんが、Cプリプロセッサの置換処理は、欺瞞と裏切りに満ちた世界なのです。 これが進化するとテンプレートなどといったもっと面白いものになるのですが、今回はCプリプロセッサで計算をしちゃったりするところまで試しにやってみましょう。 (なお、GCCにより実験的に調べた記事なので、他のCコンパイラ

    Cプリプロセッサメタプログラミングで、文字列系泥沼関数型プログラミング - 簡潔なQ
  • 学習サポート hig3.net

    Chat/Mail Microsoft Teams @mailでテキストチャット(学生さん, 非常勤講師の先生用) Microsoft Teams @officeでテキストチャット(教職員用) e-mail hig@math.ryukoku.ac.jp Ryukoku G Suite for Education a00010@mail.ryukoku.ac.jp 記名や匿名の質問・相談フォームをTeams, Moodleに設けていますのでご利用ください. Web https://hig3.net 授業資料の再配布は紙ではなくここからダウンロード. LearnMoodle から提出 場所 瀬田キャンパス 1号館 Office:5階 1-507 実験室(学部生+大学院生, Team539): 5階 1-539 数理・情報科学課程事務室5階 1-535 先端理工学部事務室(教務課) 1階 電話

    学習サポート hig3.net
  • C にクロージャのようなものを追加する Grand Central Dispatch - blog.8-p.info

    Snow Leopard には Grand Central Dispatch (以下 GCD) という機能がある。これは C と当然 C++, Objective-C, Objective-C++ にクロージャのようなものを追加し、マルチコアな CPU における計算の並列実行を簡単に書けるようにするらしい。 私は並列化には全然詳しくないのだけど、クロージャのようなものは気になるので調べてみた。 Block Apple Developer Connection にある Introducing Blocks and Grand Central Dispatch は GCD の全体像をコードを交えつつわかりやすく説明している。この “blocks” というのがクロージャのようなものだ。 Blocks are similar to — but far more powerful than — tr