タグ

Cに関するyagieyのブックマーク (10)

  • yohhoyの日記

    C++2c(C++26)標準ライブラリに追加される多次元部分ビューstd::submdspanについて。 // <mdspan>ヘッダ namespace std { template< class T, class E, class L, class A, class... SliceSpecifiers> constexpr auto submdspan( const mdspan<T, E, L, A>& src, SliceSpecifiers... slices) -> /*see below*/; } まとめ: 多次元ビューstd::mdspan(→id:yohhoy:20230303)から部分ビューを取り出す(slice)関数。 第2引数以降のスライス指定子リストにより、各次元のスライス方法(slicing)を指定する。 単一インデクス:単一値。指定次元に対するインデクスを固

    yohhoyの日記
  • ソフトウェア特論 講義資料 C言語によるLisp処理系

    Next: 1 Lisp処理系: Xlisp Up: Software IV Top ソフトウェア特論 講義資料 C言語によるLisp処理系 稲葉 雅幸 ここでは,LispのインタプリタをC言語で記述すること を紹介します.Lispの処理系は,read-eval-printを 繰り返すものですが,C言語でread, eval, print のそれぞれがどのようになるかを見ます. そして,Lispの処理系においては,データをreadした時, データを評価して計算中に新たにデータを生成したり, 新しいデータを結果として返したりします. 通常の計算機内で直線状に並んだメモリデータで, データの配列や長さが自由になるリストデータをどのように 表現するかが重要になります.そして,いらなくなった データがあった場合に,どのようにそのメモリデータを 再利用するのかについての仕組みを決める必要があります.

  • http://www.iro.umontreal.ca/~boucherd/mslug/meetings/20041020/90-min-scc/90-min-scc.pdf

    The 90 minute Scheme to C compiler Marc Feeley page 1 Goals • Goals • explain how Scheme can be compiled to C • give enough detail to “do it at home” • do it in 90 minutes • Non-goals • RnRS compatibility, C interoperability, etc • optimizations, performance, etc • explain optimizations, Gambit-C, etc • Target audience • people who know Scheme/Lisp • helps to know higher-order functionspage 2 Why

  • ワイド文字列の罠

    C++の罠 wchar_tを使うときの罠 日語などのマルチバイト文字列を扱うソフトで、 正規表現などの文字列処理をもっと楽にやりたいという人は、 選択肢の一つとしてワイド文字列の使用を考えることでしょう。 最近では多くのライブラリがワイド文字列とシングルバイト文字列双方に対応し、 C言語も95年の改定でワイド文字列型wchar_tを導入し、 既存のchar型を使用する標準ライブラリはほぼ全てwchar_t版が用意されました。 無論C++も、98年にISOで標準化された際には、 文字列クラスはちゃんとstringとwstringの双方が用意されました。 ところが、実際にwchar_tを使用するとなると、様々な障壁が立ちはだかります。 ここでは、私が陥ったwchar_tに関する「罠」を紹介していきます。 罠その1:Win9xで使えない WinNT系列では、文字列を扱う全てのAPIにchar版

  • clmemo@aka: Emacs で C 言語プログラミングを始める人へのイントロダクション

    Emacs エディターで C 言語のプログラムを書く人向けに、入門用の解説がないように思う。そこで、知っておくと便利な機能をまとめてみた。 読者は、Emacs の操作とカスタマイズが最低限できる人を対象にしている。つまり、C-x C-f といったショートカット・キーが使えて、.emacs の設定ファイルがいじれる人。各機能について、基的な使い方とその効果、あと最低限の設定について書き出した。 目次 ソースの色付け インデント アラインメント コメント info マニュアル スペル・チェック タグ・ジャンプ 関数名の補完入力 コンパイルとエラー行ジャンプ ChangeLog ファイル 1. ソースの色付け Emacs は、C 言語のソース・ファイルを解析して、if や for といったキーワードに対して、自動で色を付ける。 色を付けることでソースにメリハリが生まれ、可読性が上がる。また、ス

    clmemo@aka: Emacs で C 言語プログラミングを始める人へのイントロダクション
  • 立命館コンピュータクラブ | Analog Input / Digital Output

    RCCへようこそ 立命館コンピュータクラブの略称(Ritsumeikan Computer Club)であり、立命館大学びわこ・くさつキャンパスを拠点にした学術系サークルです。 動画は Kanon(@kanon_k4) が作成してくれました! 活動内容 RCCは基的に2点の活動を行っています。 研究活動 特定の分野について調査したり、議論しあったりすることにより、情報技術や社会についての見識を深めていきます。 研究の成果は論文としてまとめ、イベントで頒布しています。 制作活動 ソフトウェア、ハードウェア、映像、音楽などの制作を行います。 制作物は情報技術を使ったものであれば、何でも構いません。 制作活動を体験できるWelcomeゼミやハッカソン、夏季制作などの制作の機会があります。 この他にも、セキュリティの大会に参加する班などが立ち上がることもあるように、RCCの活動は多岐にわたります

    立命館コンピュータクラブ | Analog Input / Digital Output
  • 未完成:A面:Emacs で C コンパイル

    Emacs で C プログラムのコンパイルの仕方を忘れてたのでメモ。 まずはプログラムを用意。 「M-x compile」と打って Enter。 Compile command: make -k と出てくるけど、Makefile は使わないので、make -k を消して、gcc %ファイル名% と入力して、Enter。 (追記) コメントで教えてもらいました。 Makefile を用意していなくても make -k hello で Enter でもコンパイルされ、実行ファイル hello.exe が生成されます。 -k は、途中でエラーがあっても、最後まで make をするオプションみたいです。 参考:GNU make 日語訳(Coop編) - makeの実行方法 下段に *complication* というバッファができて、コンパイル内容がでます。上画像はコンパイル成功のもの。エラーが

  • MAKEの第一歩(入門)

    makeというコマンドは、Makefileというファイルの記述に従ってファイ ルの更新を行なうユーティリティです。 と書いてもよくわからんだろうなぁ(^^; まあ、最初のセクションmakeって何するもん?でも読んでみてください。 このページの目標地点は入門の手前あたりまでです。「makeって聞いた ことはあるけど」とか「ちょっと触ってみようかな?」というレベルを 対象に書いてみました。「Makefileって最初だけを大文字にしなくちゃ いけないの?」などということさえ書かれていません。そのへんはman かinfoか成書で調べてください。 なお、このページ中で $ ls などと書いてあるときの$はコマンドプロンプトです。 目次 makeって何するもん? もっとも簡単な例 複数ファイルの場合 マクロの利用 ターゲットの生成方法の指定 ちょっとした応用 C以外にmakeを使う サフィックスルール

  • BasicEmacsAndGcc - ひらくの工房

    この文書は、LinuxなどのUnix系OSの初心者を対象に、Emacsを用いたC言語ソースの編集と、GCCによるコンパイルを行う手順を紹介するものです。 Cの文法やアルゴリズムについてはプログラミングの参考書・Webページに譲り、それらのサンプルを実際に入力してコンパイルするために必要な情報をまとめてみました。 ここに書いてある事に一通り慣れておけば、後は独学でCを勉強していく事が出来るんじゃないかと思います。 この文書にしたがって実際にEmacsの操作等を練習する場合には、次のように適当な空のディレクトリを作って、その中で作業をすることをお勧めします。([enter]はEnterキーを押すことを意味します) ~$ mkdir emacs_c[enter] ~$ cd emacs_c[enter] ~/emacs_c $ (以下では、プロンプトは省略して単に $ と書きます。また、プロンプ

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

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

    Cプリプロセッサメタプログラミングで、文字列系泥沼関数型プログラミング - 簡潔なQ
    yagiey
    yagiey 2009/11/10
    すごく…変態です
  • 1