タグ

C言語と規格に関するmohnoのブックマーク (9)

  • C language

    The C programming language C is a general-purpose high-level programming language suitable for low-level programming, in other words: a system programming language. It stands out in terms of portability, interoperability, efficiency, and stability. Revisions of the C standard

    mohno
    mohno 2025/03/12
    “公式サイト”なの? whoisは匿名化されていて(先月登録されたばかり)、運営主体が微妙に分からない。
  • 浮動小数点型の算術とお近づきになりたい人向けの記事 - えびちゃんの日記

    お近づきになりたい人向けシリーズです。 いろいろなトピックを詰め込みましたが、「これら全部を知らないといけない」のようなつもりではなく、いろいろなことを知るきっかけになったらいいなという気持ちなので、あまり身構えずにちょっとずつ読んでもらえたらうれしい気がします。 まえがき 予備知識 規格 用語 精度という語について 記法 表現について 有限値の表現について エンコードについて 丸めについて よくある誤差や勘違いの例 0.1 = 1 / 10? 0.1 + 0.2 = 0.3? 整数の誤差 Rump’s Example 基的な誤差評価 用語に関して 実数の丸め 有理数の丸め 基演算の丸め 差について 複数回の演算 補題たち 桁落ちについて Re: Rump’s example 融合積和 数学関数に関する式の計算 誤差の削減に関して 総和計算 数学関数の精度について 比較演算について 雑

    浮動小数点型の算術とお近づきになりたい人向けの記事 - えびちゃんの日記
    mohno
    mohno 2024/02/26
    ちゃんと読んでないが力作だな。/「16 進法リテラル」←CだけじゃなくPythonにもあるのか。/「四捨五入の話」←Decimalでもないのに“小数第2位で四捨五入”とかやめてほしい。
  • 日立に戻りたいわけがない。 - テストステ論

    新卒で日立へおれが新卒で入ったのは、日立製作所だ。 おれが面接を受けたのはシステム開発研究所というところだったが、 おれが入った年に研究所の再編成があって、横浜研究所というところに配属になった。 横浜研究所は横浜の戸塚というところにあり、 寮はそこまでバスで一のところにあった。 寮生活は隣人の先輩が発狂して泣き叫びだしたり、色々トラブルはあったが、 まぁ楽しかった。 寮というのはなかなかいいものだ。 京大で吉田寮や熊野寮にわざわざ住みたいという人がいることも微妙にだが理解出来る。 システム開発という名前のとおり、 そこはソフトウェアの応用研究をやってる研究所で、 と言っても企業の応用研究というのは事業所から依頼された研究(通称、依頼研)だったり、 あるいはもう少し先のことを考えた先行研と呼ばれるものがあったするくらいで、 大学のような研究をやってるというところではないのだが、 まぁおれ的

    mohno
    mohno 2023/02/21
    「MISRA-C…これが完全にゴミ」←わはは。時期的に"2004"か"2012"か分からんが。「スーパーフリー早川」←どこのサークルだよ。
  • 疑われる「C++」の安全性、今後の動きはどうなる

    C++」は非常に人気があるプログラミング言語だが、同言語の標準化に取り組んでいるグループが、C++の「メモリ安全性」を(新しいライバル言語である「Rust」のように)高めるための今後の道筋について議論する文書を発表した。 Rustは、MicrosoftAmazon Web Services(AWS)、Meta、GoogleAndroid Open Source Project、主にC++で書かれている「Chromiumプロジェクト(まだ始まったばかりだが)、Linuxカーネルなど、多くの企業やプロジェクトで採用されており、メモリ関連のセキュリティホールを減らすのに役立っている。最近では、米国家安全保障局(NSA)までが、開発者に対してC++からC#やJavaRubyRustSwiftへの戦略的な移行を促す事態になっている。 C++の生みの親であるBjarne Stroustr

    疑われる「C++」の安全性、今後の動きはどうなる
    mohno
    mohno 2023/01/30
    なんかさー、安全性とか、そういうのが必要なら、わざわざ“C++”を変質させなくても、別の言語に切り替えればいい話だと思うんだよね。それで互換性が犠牲になるなら“C++”(あるいはC)を選ぶ理由がないというか。
  • C99の仕様

    長い歴史を持ちながら、依然として人気の高いC言語。その最新仕様の情報にキャッチアップするための連載スタート。今回は1999年に策定された「C99」を取り上げる。 連載 INDEX 次回 → C言語(以降、単にC)はDennis Ritchieによって1969~1973年の間にベル研にて開発されたプログラミング言語である。長い歴史を持つと共に非常にポピュラーな言語で、プログラマーでCを知らない人はまずいないと言っていいだろう。プログラミング言語のシェアを調査しているTIOBEでも、ここ最近は常に1、2位を占めている。 Cの言語仕様は今から25年近く前である1989年に初めて規格化され、これは一般に「ANSI-C」と呼ばれている。ANSI-Cは長らくCの言語仕様のスタンダードの位置を占め、世の中の大半のプログラマーは、このANSI-Cに慣れ親しんでいることだろう。しかし、実はCの言語仕様はその

    C99の仕様
    mohno
    mohno 2022/08/02
    いまさらながらメモ。/まあ、C++に採用されていなければ意味ないんだけど。
  • 最近のC言語と、次期C標準(C23)

    C言語といえば古い言語なイメージですが、その重要性はまだまだ落ちていません(多分)。重要な言語だからこそ、今もひっそりと進化を続けています。この記事では、そんなC言語の最近の動向を紹介します。 まずはC言語の前世紀の標準であるC99、現行の標準であるC11/C17を振り返り、その後に未来の標準であるC23に触れます。 C99 C99では色々追加されました。ここでは一部のみの紹介とします。 _Bool _Complex C++の std::complex とメモリ上での互換性がある(C++11以降)。 可変長配列(VLA) 可変長引数マクロ 浮動小数点数の強化 十六進表記 筆者による関連記事:浮動小数点数の16進表記 fma 筆者による関連記事:FMA (fused multiply-add) の話 #pragma STDC FENV_ACCESS, #pragma STDC CX_LIMI

    最近のC言語と、次期C標準(C23)
    mohno
    mohno 2022/01/30
    「K&Rスタイルの関数定義の廃止」はさておき、C++にないC独自の拡張はVisual Studioでは採用されない可能性が高いから、どっちにしろgcc独自機能っぽくなっちゃうんだけどな。
  • Cの旧関数宣言 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Cの旧関数宣言 - Qiita
    mohno
    mohno 2020/10/29
    要するに、この記事が悪い。「古いソースコードではANSI C標準以前の関数宣言がある」←“以前”はvoidがなかったので「旧関数宣言」の例として不適切だし、浮動小数はdouble型で渡されるのでわざわざfloat型で受けるなと。
  • C++Builder とトライグラフ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    C++Builder とトライグラフ - Qiita
    mohno
    mohno 2018/12/24
    トライグラフはどうでもいいけど:-p 「「せめて BCC64 を C++17 対応版にしてくれ! (C++17 対応は Win32/Win64 同時にやれ)」という声もあちこちで聞かれた C++Builder 10.3 Rio」←うわぁw
  • MicrosoftからC99開発者へ: ISO C++を使え

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    MicrosoftからC99開発者へ: ISO C++を使え
    mohno
    mohno 2018/03/10
    「C90または、ISO C++のどちらの一部でもないISO Cの機能をサポートする予定はない」「MSがCに対してリソースを無駄にしないことには賛成だ」
  • 1