タグ

Cに関するwestlifeのブックマーク (16)

  • libwebsocketを使ってZynqにWebsocketサーバを実装してみる:C言語編 - メモ置き場

    ZynqとWebsocketを組み合わせてリアルタイムモニターシステムを構築したという記事を書いた.Websocketサーバをどのように実装したかについてメモを残しておく. このgithubのコードを基としてサーバを実装した. このページでは,上記コードを例にとってどのようにWebsocketサーバを実装すればよいかについて述べる. Websocketとは Websocket通信の流れ libwebsokcetsとは libwebsocketのインストール方法 libwebsocketを使ったWebsocketサーバの内容 自作コールバック関数とプロトコルの宣言 lws_protocols構造体 コールバック関数 lws_callback_reasons サンプルコードの構造 サーバープログラム クライアントへのデータ送信 クライアントのプログラム Websocketとは Websock

    libwebsocketを使ってZynqにWebsocketサーバを実装してみる:C言語編 - メモ置き場
  • libwebsockets.org lightweight and flexible C networking library

    Overview Libwebsockets (LWS) is a flexible, lightweight pure C library for implementing modern network protocols easily with a tiny footprint, using a nonblocking event loop. It has been developed continuously since 2010 and is used in tens of millions of devices and by thousands of developers around the world. LWS is Free Software using the MIT license. Getting started git clone https://libwebsoc

  • 革命の日々! __attribute__(alloc_size) を使わないと_FORTIFY_SOURCE を活かせないよ。という話

    _FORTIFY_SOURCEというバッファーオーバーフロー攻撃を防ぐのにとても有用なマクロがある。 知らなかった人は以下のmanでもまず見てください http://linuxjm.sourceforge.jp/html/LDP_man-pages/man7/feature_test_macros.7.html _FORTIFY_SOURCE (glibc 2.3.4 以降) このマクロを定義すると、文字列やメモリの操作を行う様々な関数を 使用する際にバッファオーバーフローを検出するための軽めのチェックが 実行されるようになる。すべてのバッファオーバーフローが検出される わけではなく、あくまでよくある例についてだけである。 現在の実装では、以下の関数にチェックが追加されている: memcpy(3), mempcpy(3), memmove(3), memset(3), stpcpy(3),

  • http://www.machu.jp/posts/20090307/p01/

    http://www.machu.jp/posts/20090307/p01/
  • FFmpeg APIで、さまざまな動画を操る - 後編:CodeZine

    はじめに こんにちは、hirataraです。 稿はFFmpeg APIの解説の後編となります。前編をご覧になっていない方は、前編からお読みください。前回の記事FFmpeg APIで、さまざまな動画を操る - 前編 サンプル: サムネイル画像を作る 後編 前編では、動画から最初のフレームを取り込むプログラムを作成しました。後編では、このフレームをFFmpeg APIを使って書き出します。フレームを静止画としてファイルに書き込む それでは、取得したフレームを書き出す処理を書いてみます。今回のサンプルでは動画ではなく画像として書き出すので、実はlibswscaleを使ってフォーマットを変更した物を直接ファイルに出力するだけでもこの仕様を満たすことができます。しかし、FFmpeg APIのエンコーダの利用方法の説明を兼ねるため、ここではあえて"image2"フォーマットを利用して動画と同じように

  • FFmpeg APIで、さまざまな動画を操る - 前編:CodeZine

    はじめに こんにちわ、hirataraです。 近年、YouTubeやニコニコ動画に代表される動画共有サービスの需要が、急速に高まっています。そのような状況で、オープンソースの動画読み書きソフトウェア「FFmpeg」が、にわかに注目を集めています。 稿では、そのFFmpegの共有ライブラリを直接呼び出して、C言語から動画を扱う方法を紹介します。FFmpegにはffmpegという便利なコマンドがついていますので、ほとんどの場合はこのコマンドを利用します。しかし、FFmpegを共有ライブラリ付きでコンパイルすると、自分の作ったプログラムから直接FFmpegAPIを利用することが可能になります。 FFmpegの共有ライブラリを利用すると、動画をファイルからデコードして再生をしたり、新たな動画を作成して特定フォーマットでエンコードし、ファイルに保存したりすることができます。対応codecがたくさ

  • a Unit Testing Framework for C and C++ - Cutter

    The latest release 1.2.7 is the latest release. It had been released at 2019-09-13. [Download] [Changes] Cutter? Cutter is a Unit Testing Framework for C and C++. Cutter's interface is easy to write, easy to debug your code and fun to run tests. (See the screenshot. You need "notify-send" command on Linux and *BSD or "growlnotify" command on macOS for this feature.) Platform Cutter works on many U

  • CUnit チュートリアル

    CUnit とは、C言語開発において単体テストを支援する 「テスティング・フレームワーク」です。 もちろん、きちんとした設計者であれば、 CUnit のような仕組みがあろうと無かろうと、 自分で作った分の設計者テストは言われなくても実施するでしょうし、 組織としてきちんとしていれば、すでに何らかの仕組みは構築しているでしょう。 ですが、もし今まで単体テストをチーム内の各設計者が バラバラに実施していたということであれば、 CUnit を試してみる価値はあります。 また、XP(eXtreme Programming) のようなスタイルを構築したいと思っているのであれば、 CUnit を必須、としてしまうのも一つの手です。 ここでは、Cygwin 環境に CUnit をインストールして使ってみます。 導入 テスト環境の概説 使ってみよう アサート・マクロ テスト・レジストリ テスト・スイート

  • C言語

    C言語をやってみよう,ふと思い立った.かなり久しぶりだ.大学当時Cは講義であった.学生時代怠けまくった結果(?)私はCよりも,趣味でやっていたJavaの方が書いたコードの行数は多い.だが,やはり「たしなみ」としてC言語はやっておかねばなるまい. 基(?)ライブラリ編 プロセス制御 シグナル パイプ IPC Pthread Socket 端末制御 curses CUnit OpenSSLを使用したCプログラミング その他 基(?)ライブラリ編とりあえず,ライブラリにある関数をいろいろ試してみる.もちろん(?)Debian環境で. ファイル操作 2003-07-20T15:13+09:00 matsu GNU/Linuxシステムでのファイル操作について.ここでは特にシステムコールを用いてファイル操作する方法について. 標準入出力ライブラリでのファイル操作 2003-07-20T15:13+

  • A garbage collector for C and C++

    Where to get the collector Platforms Scalable multiprocessor versions Some collector details Further reading Current users Local links for this collector Local background Links Contacts, Updates, and Reporting Issues Translations of this page [ This is an updated version of the page formerly at http://www.hpl.hp.com/personal/Hans_Boehm/gc, and before that at http://reality.sgi.com/boehm/gc.html an

    westlife
    westlife 2007/09/17
    Boehm GC
  • プログラミング言語 C の新機能

    プログラミング言語 C は 1990 年に ISO で規格化された言語です。その後、何度かの誤りの訂正や wchar_t 型の追加といった追補がなされた後、さらに使いやすくするための新しい機能が検討されてきました。そして、1999 年、ついに新しいプログラミング言語 C の仕様「ISO/IEC 9899:1999 - Programming Language C」(略称 C99) が 1999/12/01 付けで規格として出版されました。ここでは、その新機能を説明します。

  • CUnitによるテスト駆動開発:CodeZine

    はじめに CodeZineでの僕のデビュー記事『Cで実現する「ぷちオブジェクト指向」』、おかげさまでなかなか好評だったようです。まだまだCは現役だと実感しました。 前回に引き続きCのお話です。テストをよりどころに実装をすすめ、信頼できるコードを書くためのプラクティス「テスト駆動開発」(TDD:Test Driven Development)を、Visual C++ 2005 Express EditionとUnit Test Framework: CUnitで行います。対象読者 そこそこのコードは書けるようになったけれど、どうも詰めが甘い/くだらないバグに出くわす/あっちを直すとこっちが壊れ、ぐだぐだになってしまう…そんな症状に悩まされている脱ビギナを目指すプログラマ。テスト、してますか? 「プログラムは思ったとおりには動かない、作ったとおりに動く」 思ったとおりに作ってないと思ったとおり

  • こーどぢんのあふたけあ

    目次 ホーム 連絡をする RSS Login Blog 利用状況 投稿数 - 1078 記事 - 2 コメント - 26220 トラックバック - 363 ニュース 著作とお薦めの品々は 著作とお薦めの品々は 東方熱帯林へ。 わんくま 東京勉強会#2 C++/CLI カクテル・レシピ 東京勉強会#3 template vs. generics 大阪勉強会#6 C++むかしばなし 東京勉強会#7 C++むかしばなし 東京勉強会#8 STL/CLRによるGeneric Programming TechEd 2007 @YOKOHAMA C++C++/CLI・C# 適材適所 東京勉強会#14 Making of BOF 東京勉強会#15 状態遷移 名古屋勉強会#2 WinUnit - お気楽お手軽UnitTest CodeZine Cで実現する「ぷちオブジェクト指向」 CUnitによるテスト駆

    westlife
    westlife 2007/03/07
  • Cで実現する「ぷちオブジェクト指向」:CodeZine

    はじめに CodeZineではお初にお目にかかります、επιστημη(エピステーメー)です。最初のアーティクルはクラシックなCのお話。 昨今のアプリケーションはオブジェクト指向言語による実装が主流と言ってもいいでしょう。C++Java、VB.NETさらにはRubyPythonといったスクリプト言語まで、オブジェクト指向でない言語を探すのに苦労するくらいです。 記事では、今なお現役バリバリで活躍している手続き型言語の代表格(?)Cによる、オブジェクト指向のマネゴト(オブジェクト指向風味のCコーディングスタイル)を試みます。対象読者 もっぱらCを主な開発言語として使ってはいるけども、オブジェクト指向に興味と憧れを抱いている方。抽象データ型 手始めにオブジェクト指向の特徴の1つ、「抽象データ型(ADT:Abstract Data Type)」をCで実現してみます。抽象データ型とは、データ

    westlife
    westlife 2007/02/15
  • Cプログラミングの秘訣

    特集 Cプログラミングの秘訣 最終更新: 2006-03-28 このテキストはC MAGAZINE 1992年4月号に掲載された原稿のオリジナルテキストを元にしてHTMLに変換したものです。掲載文章と細部が異なっていると思われます。また、気付いた個所をいくつか修正してあります。 当時はまだWindows 95もないような時代で、現在の状況から見ると違和感のある内容も結構あるかもしれませんが、時代背景を想像しながら補正しつつ読んでいただければ幸いです。 ※2006年3月28日追記: 何が原因か知りませんがこのページのアクセスが増えているそうなので、 HTML のおかしなところを修正しました。 文章の変更はありません。 なお、このサイト(表ページ)は現在休眠状態ですが、 裏ページ や 裏の裏ページ の方を、細々と更新していたりします。 目次 Part1 よいプログラムを書く条件 Part2 明

  • C 言語によるオブジェクト記述法 COOL

    C 言語によるオブジェクト記述法 COOL ver.2 C-language's Object Oriented Language ver.2 [検索] 目次 0. はじめに 1. クラスの記述, 属性の記述 2. 操作の記述 3. クラス属性の記述、定数の記述 4. 初期化操作と後始末操作の記述 4-1.処理効率優先インターフェイス 4-2.再コンパイル不要インターフェイス 4-3.動的バインディング・インターフェイス 5. 状態取得操作と状態設定操作とイベントハンドラの記述 6. 集約の記述、継承の記述 6-1.集約の記述 6-2.継承の記述 6-3.多重継承の記述 6-4.重複継承の記述 6-5.動的継承の記述 7. 多態性(多相性)、インターフェイス継承の記述 7-1.多態性の記述 7-2.多態性を持った生成の記述 7-3.多重継承の多態性の記述 7-4.重複継承の多態性の記述 7

  • 1