並び順

ブックマーク数

期間指定

  • から
  • まで

481 - 520 件 / 1007件

新着順 人気順

C++言語の検索結果481 - 520 件 / 1007件

  • C言語の色々なデバッグ方法 - Qiita

    こんにちは。42 Tokyo Advent Calendar 2022の3日目を担当致します、42 Tokyo在校生の者です。 Overview C言語で開発する際のデバッグ方法について纏めます。 2022/12/03(土)迄にミニマムで公開し、その後、随時加筆予定です。 TOC Overview Introduction Environment Methods dprintf leaks GCC GDB LLDB Valgrind IDE Editorial notes References Introduction 42 Tokyoでは、まずUNIX Programmingを学びます。UNIX OSは主にC言語で開発されていますので、課題の大半もC言語を使用するものです(因みにUNIX互換OSを目指して開発され、多数の派生版があるLinuxも、やはり主にC言語で開発されています)。 カ

      C言語の色々なデバッグ方法 - Qiita
    • C 言語で文字列の一部を取得

      関数 strncpy を使って C 言語の文字列の一部を取得する カスタム関数を使って C 言語で文字列の一部を取得する この記事では、C 言語で文字列の一部を取得する方法について複数の方法を紹介します。 関数 strncpy を使って C 言語の文字列の一部を取得する strncpy は、<string.h> ヘッダファイルで定義されている C 言語の文字列ライブラリ関数の一部です。この関数は元の文字列から指定されたバイト数のバイトをコピー先にコピーします。strncpy は、コピー先の char*、コピー元のポインタ、コピーするバイト数を表す整数の 3つのパラメータを取ります。指定されたバイト数がソース文字列に含まれるバイト数を超える場合は、追加のヌルバイトが宛先に格納されます。 関数 strncpy はコピー先の文字列へのポインタを返すので、この呼び出しを printf 文に連鎖させ

        C 言語で文字列の一部を取得
      • コンパイラの作り方 Cで書かれたC言語コンパイラ(return文対応版)をC#で書き直してみる - Qiita

        はじめに トランスコンパイラ試作品の内部設計に進行していますが、これがけっこう難航しておりまして、こっちはあまり進捗がないまま記事の未投稿が続くのもなんですので、とりあえずコンパイラ作ったことないので、ネット上でよくヒットして前半部分は説明もたいへん詳しい低レイヤを知りたい人のためのCコンパイラ作成入門の前半部分をC#で書いてみていますの続きです。また、日本語ロジック仕様記述言語 Re:Mindによるロジック仕様も引き続き併記しています。 この記事内容の作業目的 言語処理系の基礎知識、基礎技能として、トークンや抽象構文木、パーサーといった基礎概念の獲得。参考サイトの9ccの「ステップ11:return文」に相当します。9ccは後半にいくほど解釈可能範囲を広げるインクリメンタル実装のため、段階的に対応構文が増えていきます。 この記事内容の作業環境 Windows11 Pro 22H2 Win

          コンパイラの作り方 Cで書かれたC言語コンパイラ(return文対応版)をC#で書き直してみる - Qiita
        • ソケット通信とは?【C言語】

          ソケット通信とはソケットを用いた通信のこと。 「通信」とは非常に身近なものであり、今読んでいただいているこのページも通信によって閲覧している。 さまざまな物が通信でつながることで、便利な機能がたくさん実現されており、これらの通信には「ソケット通信」で行われているケースが多い。 ソケットを使用することで、異なるマシン間(もしくは同一のマシン上)の異なるプロセス間で通信を可能にする。 そもそもソケットとは? ソケットっていうのは通信端点のこと。 いいかえると、アプリとアプリ(プログラムとプログラム)の通信の出入り口。 ソケット通信を行うには、まずはアプリやプログラム内で「ソケット」を作成。 そして、それを他のアプリやプログラムのソケットに接続してデータのやり取りを行う。 なので、まずはこのソケットを作成する必要がある。 C言語ではこのソケットを、socket 関数により作成することが可能だ。

            ソケット通信とは?【C言語】
          • C言語からRustの関数をコールする方法(連載23)|YN

            前回、solidクレート側で、SOLID OSの持つC/C++関数を、Rustからコールする方法について見てみました。 今回はその逆で、C/C++言語からRustの関数をコールする方法について考えていきたいと思います。 個人的にはこちらの方がよくあるケースではないかなぁと思うのですが、、、どうでしょうか。一部分だけRust化するイメージです。 では、行ってみましょう! 1.ワークスペース作成過去記事を参考にして、ワークスペースを作ります。 https://note.com/kmc715/n/n3b503a948df5?magazine_key=m76fc246deaa1 「1.1 Rustのライブラリをリンクする元のワークスペースを作る」 と、 「1.2 RustのLibraryプロジェクトをワークスペースに追加する」 が参考になります。 ※メインプロジェクトのリンカ設定で、 追加のライブ

              C言語からRustの関数をコールする方法(連載23)|YN
            • 【C言語】自作シェルの作り方を学べるおすすめWebサイト

              本記事の信頼性 リアルタイムシステムの研究歴12年. 東大教員の時に,英語でOS(Linuxカーネル)の授業. 2012年9月~2013年8月にアメリカのノースカロライナ大学チャペルヒル校(UNC)コンピュータサイエンス学部で客員研究員として勤務.C言語でリアルタイムLinuxの研究開発. プログラミング歴15年以上,習得している言語: C/C++,Python,Solidity/Vyper,Java,Ruby,Go,Rust,D,HTML/CSS/JS/PHP,MATLAB,Assembler (x64,ARM). 東大教員の時に,C++言語で開発した「LLVMコンパイラの拡張」,C言語で開発した独自のリアルタイムOS「Mcube Kernel」をGitHubにオープンソースとして公開. 2020年1月~現在はアメリカのノースカロライナ州チャペルヒルにあるGuarantee Happin

                【C言語】自作シェルの作り方を学べるおすすめWebサイト
              • 隣接リストで幅優先探索をc言語で実装(サンプルコードあり) | ITを使っていこう

                • 試験概要【C言語プログラミング能力認定試験】 | C言語プログラミング能力認定試験・Java™プログラミング能力認定試験 | 資格検定のサーティファイ│あなたのスキルアップを応援します||資格検定のサーティファイ|あなたのスキルアップを応援します|

                  C言語プログラミング能力認定試験 (C-Language Programming Skills Qualification Test) C言語を駆使して応用プログラム(言語処理系、ユーティリティなど)を作成する能力を認定します。 ※1級の出題内容は、CUIベースの実技試験であり、GUIを使用しないことから、IDE(統合開発環境)を使用せずとも、Borland C++ CompilerとテキストエディタTeraPadで十分に試験の対応が可能な実技試験となっております。

                  • C言語で変数を書いてみる | インフラエンジニアの技術LOG

                    前回は簡単なプログラミングを書きました。 「#include<stdio.h>」を宣言することで、入出力ファイルを読み込み、「int main(void)」と書かれた場所から命令を実行していくってな感じです。 詳しくは、ここをご参照ください。 その続きで今回は『変数』についてまとめます。 変数って言葉を聞いただけでも結構、抵抗感満載ですが、要は「データの入れ物」ってことみたいです。 変数とは何かと言うこととルールについて 上記でも言った通り、変数は「入れ物」ってことみたいです。 変数を宣言することでメモリ上の領域に「入れ物」を用意することができることと、宣言した変数には、値を入れて「記憶」させることができるみたいです。 つか、よくわかんないんで実際にコマンド叩いて実行して出力結果を出しゃいいんじゃねぇのってな感じで打ちます。 #include <stdio.h> int main (voi

                      C言語で変数を書いてみる | インフラエンジニアの技術LOG
                    • コンプロI C言語の部屋です。

                      このサイトは東京電機大学東京千住キャンパスのEJ, EK, EF科の1年次生向けコンピュータプログラミングIの授業内容やお知らせをするページです。プログラムの初歩の初歩を学ぶ人のためのページです。この資料を授業等で共有したいという方もどうぞお使いください。一緒に学習向けコンテンツを作ってくださる方、学習者向けのサンプルプログラムの提案など歓迎いたします。

                        コンプロI C言語の部屋です。
                      • 【C言語】小数点以下の桁数を指定する方法【printf】

                        double型やfloat型などの浮動小数点数型(実数型)の小数部の桁数を揃えるためのフォーマット方法を紹介します 以下のように%.桁数fという形式で修飾します。%.2fと書けば小数第2位までが表示されます。 printf("%f" , 3.14); // 3.140000(デフォルト) printf("%.2f", 3.14); // 3.14 (下二桁) printf("%.0f", 3.14); // 3 (小数点以下切り捨て) printf("%.f" , 3.14); // 3 (小数点以下切り捨て) printf("%5.2f", 3.14); // " 3.14"(右詰め) printf("%.2f", 0.0 / 0); // "nan" (NaN) printf("%.2f", 1.0 / 0); // "inf" (Infinity) C言語もC++も、printf関数

                        • C言語の歴史(1): 永遠ログ

                          Mac OS X 向けアプリケーション開発を仕事としている永遠製作所が、日々の開発でつきあたった問題点や、ちょっとしたTipsをメモしていこうと言う、自分勝手な覚え書きブログ。 ちょっと最近たまーにブログを書いたと思ったら買い物のレビューとか書籍のレビューとかばかりでなかなか中身のある記事を書いていませんでした。 そこでちょっとC言語の歴史を振り返ってみることにしました。2回に分けます。 1回目はC言語の祖先と子孫についてです。2回目はC言語の発展の歴史の予定。 C言語はUNIXの実装用言語としてデニスリッチーによって開発されましたが、開発の参考にした祖先の言語がありました。その系譜を図示したのが以下です。 《C言語の起源をめぐって》 http://www.lbm.go.jp/toda/comp/corigin.html こちらに直系祖先についての記述があります。 図中の各言語についての説

                          • C言語 timeの加算 - Qiita

                            #include <stdio.h> #include <time.h> // add int main(void){ time_t timer; struct tm *s_tm; // 現在時刻でtimerを取得 time(&timer); // timerからtm構造体を取得 s_tm = localtime(&timer); printf("分: %d\n",s_tm->tm_min); printf("秒: %d\n",s_tm->tm_sec); // timeの加算 : timerに1秒足す timer += 1; // timerからtm構造体を取得 s_tm = localtime(&timer); printf("分: %d\n",s_tm->tm_min); printf("秒: %d\n",s_tm->tm_sec); } わかってる人から見れば当たり前のコードですね

                              C言語 timeの加算 - Qiita
                            • C言語 練習問題50 | TECH PROjin

                              C言語練習問題 C言語練習問題 環境について C言語の練習問題です。 開発環境は以下の通り。コンパイラ、OSともに64bit環境である。 PC:MacBook Pro 2011early 15inch OS:Windows 8.1(デュアルブート) 64bit版 メモリ:16GB(8GB x 2) CPU:Core i7-2635QM 2.00GHz コンパイラ:MinGW-w64 5.3.0 (posix, sjlj) ※問題文に書いてあるプログラムを実行する際は自己責任で実行してください。 ※※各問題へのリンク一覧を作成しました。 次のプログラムを作った。コンパイル、実行に関して以下の問いに答えよ。 プログラム(test50.c) #include <stdio.h> int main(void){ int num = 0; switch(num){ case 0: printf("A

                              • コンパイラの作り方 Cで書かれたC言語コンパイラ(比較演算子版)のロジック仕様を日本語ロジック仕様記述言語 Re:Mind(リマインド)で記述してみる - Qiita

                                コンパイラの作り方 Cで書かれたC言語コンパイラ(比較演算子版)のロジック仕様を日本語ロジック仕様記述言語 Re:Mind(リマインド)で記述してみるC#ドメイン駆動設計コンパイラ抽象構文木ロジック仕様記述言語 はじめに トランスコンパイラを実装してみたいのですが、とりあえずコンパイラ作ったことないので、ネット上でよくヒットして前半部分は説明もたいへん詳しい低レイヤを知りたい人のためのCコンパイラ作成入門の前半部分をC#で書いています。「ステップ7:比較演算子」を書いた時点で諸般の事情で間が空いたので、少し内容を忘れてきました。そこで、関数名・変数名を日本語を導入することでソースコードの可読性を向上させて、なにを書いているロジックなのかをわかりやすくしてみることにしました。ただし、C#に、日本語の関数名・変数名だけを導入した状態はロジックの可読性としてベストとは言えないので、さらにそのロジ

                                  コンパイラの作り方 Cで書かれたC言語コンパイラ(比較演算子版)のロジック仕様を日本語ロジック仕様記述言語 Re:Mind(リマインド)で記述してみる - Qiita
                                • 公開試験案内・申込の流れ【Java™プログラミング能力認定試験】 | C言語プログラミング能力認定試験・Java™プログラミング能力認定試験 | 資格検定のサーティファイ│あなたのスキルアップを応援します||資格検定のサーティファイ|あなたのスキルアップを応援します|

                                  ※2・3級の試験開始時間について 上記の時間内のお好きな時点から受験を開始できます。機器の設置完了後に試験時間の計測が開始します。 例えば「10:00~12:00の間に開始」の場合、10:20に始めても、11:30に始めてもかまいません。試験時間が60分の場合、10:20に始めた方は11:20で試験終了、11:30に始めた方は12:30で試験終了となります。 なお、試験時間が重ならないよう調整できる場合には複数の級を同日にご受験いただけます。

                                  • C言語で百の位までの位ごとの足し算をする方法 - Qiita

                                    目的 ・何も検索しないで解けるようになりたい。 ・AtCoderの問題分けてみた 注意 Atcoderのabc187_A - Large Digitsのネタバレあり。 解法 ・四則演算 と 条件分岐を使う。 (他にもあると思うけど気が向いたら探す) ACしたコード #include <stdio.h> int main(void) { int a; int b; scanf("%d%d",&a,&b); // printf("%d %d\n",a,b); // printf("%d\n",a / 100); //100の位 // printf("%d\n",(a / 10) % 10); //10の位 // printf("%d\n",a % 10); //1の位 int suma = 0; int sumb = 0; suma = a / 100 + (a / 10) % 10 + a

                                      C言語で百の位までの位ごとの足し算をする方法 - Qiita
                                    • C言語の構造体を使った構文作成例 | インフラエンジニアの技術LOG

                                      構造体の基礎は、小学校のクラス(char)と人数(int)を管理するプログラムを作りたいといった時に便利です。 構造体は、違う型(charとint)を組み合わせて作った型のことで、構造帯を使うためには以下のように2つの構文を作成する必要があります。 C言語の構造体の構文 次のプログラムは、幼稚園のクラスと人数を登録するプログラムです。 全部で3クラスでそれぞれのクラス名と人数を登録して画面に出力させます。 # vim test.c #include <stdio.h> #define NAME 10 #define ARRAY 3 struct Section{ /* struct Section構造体 */ char section_name[NAME]; int member_num; }; int main(void) { struct Section class[ARRAY]; /

                                        C言語の構造体を使った構文作成例 | インフラエンジニアの技術LOG
                                      • C言語でのファイルの扱いについて

                                        C言語でのファイルのオープン、クローズ方法、ファイルからの読み込み、ファイルへの書き込み方法について説明しています。

                                        • Pythonで簡単なc言語のファイルを作成 - Qiita

                                          たくさんのバイナリファイルを作るにあたりc言語のプログラムファイルが必要だったのでPythonでチャチャチャと作った。その回顧録です。 c言語のプログラムファイルを作成 数値計算を含まない 文字列をprintfするだけのC言語ファイルを100個作るものです。 文字列は、英字の大文字・小文字を5~100文字をランダムに生成したものです。 from random import randint x_lay = "abcdefghijklmopqrstuvwxyz" X_lay = str.upper(x_lay) lay = x_lay + X_lay laylist = list(lay) #print(laylist) #['a', 'b', 'c', 'd'.... for i in range(100): str = "" strlen = randint(5, 100) for k i

                                            Pythonで簡単なc言語のファイルを作成 - Qiita
                                          • C言語での無限ループの作り方 - C言語入門

                                            プログラムを作成するときに、無限ループを利用することがあります。C言語では、 while 文や for 文を利用して、無限ループを作れます。ここでは、for や while を利用した無限ループの作り方を紹介します。 読み方 無限ループ むげんるーぷ 概要 無限ループが必要なシーンは、どういったケースでしょうか?例を挙げてみましょう。 ウェブサーバのプログラムのように、永久的にクライアントの接続を待ち、接続がきたら、処理をする、を終わりなく続けるプログラム ログなどのファイルを永遠と読み続けて、処理し続けるプログラム 上記を簡単に説明すると、以下の様な条件で、無限ループを使うことになります。 プログラムの終わりが来ない いつ終わるかわからない 無限ループは、Unix の デーモンプロセスのようなプログラムでよく利用されます。 無限ループを作る制御文 無限ループを作るときに、利用できる制御文

                                            • ぼろアパートでわかる!二次元配列(C言語) - マトリョーシカ的日常

                                              二次元配列ってわかりづらい いや、二次元配列がわかりにくいわけではない。matlabに比べてCは配列に関するコードが長ったらしいのだ。任意の行の内容を出力するのにいちいち行と列成分を指定し、for文で回さないといけなかったり、行列のサイズを取得するのにも割り算を使う必要があったり…。 そして調べてみてもポインタだの宣言だのint型long型だの訳の分からない単語を使い、初心者を煙に巻くのだ。 それでも配列に関して、わずかながら理解することが出来たのでここにまとめてみようと思う。 一次元配列は一戸建てで、二次元配列はアパート。 配列とは似たような要素を収納する箱のようなもので、箱それぞれに番号を与え、後から要素を取り出すときに分かりやすくする働きがある。上の図の場合は配列は箱ではなく家で、要素は家に住んでいる人の年齢だと考えてほしい。一次元配列は一戸建て、二次元配列はアパートと考えると分かり

                                                ぼろアパートでわかる!二次元配列(C言語) - マトリョーシカ的日常
                                              • c言語のプログラミングにおいて、倍精度浮動小数点doubleと単精度浮動小数点floatはどのようにプログラミングで使い分ければいいのです... - Yahoo!知恵袋

                                                えーと、floatを使わないという回答が出ていて、ちょっと誤解を招くなと考えたので、きちんと説明します。 まず、貴方がプログラム初心者である場合、何も言わずにdoubleを使ってください。floatと言うのは、計算速度が早くできるのですが(できない場合もあるが、これはCPUの設計に依存するので処理系依存です)、制約も大きいですので数値についてのある程度理解が無いと使いこなせません。 定義についていっておくと、IEEEで定義されていますが、floatは単精度浮動小数点で、8桁。倍精度は16桁の有効数字を持ちます。当然、floatは8桁しかありませんので、a+bなどの演算で落ちる場合があります。これを桁落ちと言います。例えば、100億+0.1 + 100万と言う三つの数の足し算をすれば分かりますがdoubleでは桁は落ちませんが、floatでは落ちる可能性があります。こういう話があるので、数値

                                                  c言語のプログラミングにおいて、倍精度浮動小数点doubleと単精度浮動小数点floatはどのようにプログラミングで使い分ければいいのです... - Yahoo!知恵袋
                                                • AtCoder に登録したら解くべき精選過去問 10 問を C 言語で解いてみた ① (第1問から第4問まで) - 幸せに

                                                  「C」という名前の,何でもできてしまうすごいプログラミング言語があるらしいので,この言語を使って drken さんの「AtCoder に登録したら解くべき精選過去問 10 問」を解いてみました.qiita.com↑この方のブログは AtCoder でプログラミングを勉強しよう!と思っている人なら必ず読むべき良サイト.自分もよくお世話になっております. まず自分の使っているテンプレートから紹介します.出入力部分などは本質でないので C 言語の標準ライブラリに全て任せて,あとは自力で書くことにしています. #include <fcntl.h> #include <unistd.h> #include <sys/mman.h> #include <string.h> #include <stdio.h> const char main_[] = { /* ここに解を求めるプログラムの中身を書く

                                                    AtCoder に登録したら解くべき精選過去問 10 問を C 言語で解いてみた ① (第1問から第4問まで) - 幸せに
                                                  • 入力と変数 | Programming Place Plus C言語編 第4章

                                                    トップページ – C言語編 このページの概要 以下は目次です。 標準入力 fgets関数 改行 変数 識別子 値 sizeof 練習問題 参考リンク 更新履歴 標準入力 前の章までに、C言語で計算処理を記述できるようになりました。しかし今のところ、3 + 5 とか 8 / 2 といったように、計算式が固定されてしまっています。計算式を変更したいと思ったら、ソースコードを書き換えて、ビルドし直して、実行するといった手順が必要であり、まったくもって不便です。十分に実用的なプログラムにするためには、プログラムを実行したあとで、利用者が自由に計算式を入力できることが必要でしょう。 そこで、この章では、プログラムの実行中にデータの入力を受け取る方法を説明します。 データを入力する手段はいくつかあります。代表的なのはキーボードですが、マウスやタッチによる操作も入力ですし、どこかのファイルに書き込まれて

                                                      入力と変数 | Programming Place Plus C言語編 第4章
                                                    • 『スッキリわかるC言語入門』の全文を4月7日(火)から6月30日(火)まで無料公開 『スッキリわかるC言語入門・全文公開プログラム』を開始

                                                      『スッキリわかるC言語入門』の全文を4月7日(火)から6月30日(火)まで無料公開 『スッキリわかるC言語入門・全文公開プログラム』を開始 COVID-19感染拡大に伴う在宅学習や遠隔講義をサポート インプレスグループでIT関連メディア事業を展開する株式会社インプレス(本社:東京都千代田区、代表取締役社長:小川 亨)は、株式会社フレアリンク(本社:東京都中央区、代表取締役:中山清喬)と共同して、人気プログラミング書籍『スッキリわかるC言語入門』の全752ページを2020年4月7日(火)から6月30日(火)まで無料公開する、『スッキリわかるC言語入門・全文公開プログラム』を開始します。 対象書籍:『スッキリわかるC言語入門』中山清喬・著  (A5版/752ページ/定価:本体2,700円+税) 公開期間:2020年4月7日から2020年6月30日まで 利用条件:C言語の学習または指導に役立った

                                                        『スッキリわかるC言語入門』の全文を4月7日(火)から6月30日(火)まで無料公開 『スッキリわかるC言語入門・全文公開プログラム』を開始
                                                      • multi stage build でpythonのC言語依存モジュールを wheel形式でインストールする - Qiita

                                                        背景 alpineでC言語依存モジュールを pip install すると激重になる話 alpineだと上記事象が避けられない multi stage buildで生成物を引っ張ってくるのが折衷案として良さそう 生成物を再利用する方法が安全ではない ベースイメージから生成物をベタにCOPYしている部分をやめる *.whlを持ってきて安全にインストールする方法を採ってみる ついでに小手先技でimageを軽くしてみる 手順 alpineイメージ上で必要モジュールをビルド 生成物(wheelファイル)は再利用しやすいように一箇所にまとめる ビルド完了済みイメージとして docker hub に push 実行環境用のalpineに multi stage build でwheelのディレクトリだけ取得しインストール 実行確認とお掃除 実装 まずは、必要なモジュール郡の取得から 今回は以下のモジュ

                                                          multi stage build でpythonのC言語依存モジュールを wheel形式でインストールする - Qiita
                                                        • C言語の基礎の勉強をしています。C言語で四捨五入する方法を教えてください。 - 今出来なくて困っているのは、double型の計算結... - Yahoo!知恵袋

                                                          ネット上ではいろいろ紹介されているのですが 0.5を足すようなアルゴリズムの場合について。 四捨五入は,端数が4以下なら切り捨てて,5以上なら切り上げると言う処理です。 たとえば,0.0~1.0の数を小数点第1位で四捨五入すると, 以下のとおりになります。(長くなりますが,省略しません。) 0.0 → 0.0 0.1 → 0.0 0.2 → 0.0 0.3 → 0.0 0.4 → 0.0 0.5 → 1.0 0.6 → 1.0 0.7 → 1.0 0.8 → 1.0 0.9 → 1.0 1.0 → 1.0 これをプログラムで実現するとなれば,いろいろ方法はあるでしょうが, 0.5を足して,小数点を切り捨てちゃえばいいんじゃないかと思うわけです。 実際にやってみると, 0.0 →(0.5足して)→ 0.5 →(小数点切り捨て)→ 0.0 0.1 →(0.5足して)→ 0.6 →(小数点切り捨

                                                            C言語の基礎の勉強をしています。C言語で四捨五入する方法を教えてください。 - 今出来なくて困っているのは、double型の計算結... - Yahoo!知恵袋
                                                          • プログラマの英語(C言語編)最初の80単語(例) - Qiita

                                                            プログラマの数学 プログラマの数学という本があるらしい。 プログラマに必要な数学は引き算だけだと思っている。 だからまだ読んでいない。 計算機に数学は必要だと思っている。 だからプログラマには数学は必要ないというのが持論。 <この項は書きかけです。順次追記します。> プログラマの英語 それはともかく、「プログラマの英語」について考えてみる。 前提としてプログラマは自然言語が話せる必要はないと思っている。自然言語の日本語も、自然言語の英語も話す必要はないと思っている。 プログラミングには、英単語に基づいた定義がいろいろある。そこで、プログラミング言語によって、知っていると便利な英単語はあるかもしれない。 国際英語 情報技術の国際会議に参加して、 フランス人はフランス語発音の英語を話す、 ドイツ人はドイツ語発音の英語を話す、 スペイン人はスペイン語発音の英語を話す、 イタリア人はイタリア語発音

                                                              プログラマの英語(C言語編)最初の80単語(例) - Qiita
                                                            • 『プログラム初心者にC言語のポインタを不本意ながら教える羽目になったなら、こう教えると良いよ - 偏見プログラマの語り!』へのコメント

                                                              テクノロジー プログラム初心者にC言語のポインタを不本意ながら教える羽目になったなら、こう教えると良いよ - 偏見プログラマの語り!

                                                                『プログラム初心者にC言語のポインタを不本意ながら教える羽目になったなら、こう教えると良いよ - 偏見プログラマの語り!』へのコメント
                                                              • なぜC言語をいちばん最初に学ぶと良いのでしょうか?

                                                                松延 英樹 (HIDEKI MATSUNOBU)さんの回答: 私の経験からいうと、私がプログラミングを始めた時代、パソコン関係のプログラミングでは、NECパソコンのN88(86)-BASIC、i86アセンブラ、ザイログ社の8ビットマイコンのZ80アセンブラぐらいしかなく、しばらくしてC言語が登場しました。 アセンブラというのは、いわゆる機械語というやつです。機械語は、16進数の数字の並びがそのままプログラムになる。コンピュータのネイティブを本当に直接実行するプログラムです。ただ、慣れれば使い勝手はとてもいいのですけれども、その機械語がそのままだとただの16進数の数字なので分かり難いわけ...

                                                                  なぜC言語をいちばん最初に学ぶと良いのでしょうか?
                                                                • 『C言語の知られザル・許されザル仕様 - Qiita』へのコメント

                                                                  ブックマークしました ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください Twitterで共有

                                                                    『C言語の知られザル・許されザル仕様 - Qiita』へのコメント
                                                                  • 「C言語による画像処理プログラミング入門」(昭晃堂)掲載プログラム・画像

                                                                    ★ご利用上の注意★ 掲載プログラム・掲載画像の著作権は著者,出版権は(株)昭晃堂に帰属します. 掲載プログラム・掲載画像は教育機関での教育や,個人的な勉強のための限定的なご利用に留めて下さい(教育機関等でのご利用については,教育ご担当者様の責任において適宜ご判断下さい). 本データの再配布,販売,商的な利用を禁止します. 掲載プログラムによってご使用の計算機,計算機環境,個人,会社等に対して万一何らかの障害・被害を及ぼしたとしても,著者・出版社は一切責任を負いません.そのことをご了解の上,ご使用下さい. ご利用上で何かご不明な点などがありましたら,昭晃堂編集部までお問い合わせ下さい. pgm,ppm 画像の表示にはフリーソフトをお使い下さい.例えばWindows(R) OS では IrfanView などが知られています(あくまでも参考情報です.リンク先について著者・出版社は一切関知しませ

                                                                    • 【C言語】POSIXのメッセージキューの使い方

                                                                      本記事の信頼性 リアルタイムシステムの研究歴12年. 東大教員の時に,英語でOS(Linuxカーネル)の授業. 2012年9月~2013年8月にアメリカのノースカロライナ大学チャペルヒル校(UNC)コンピュータサイエンス学部で客員研究員として勤務.C言語でリアルタイムLinuxの研究開発. プログラミング歴15年以上,習得している言語: C/C++,Python,Solidity/Vyper,Java,Ruby,Go,Rust,D,HTML/CSS/JS/PHP,MATLAB,Assembler (x64,ARM). 東大教員の時に,C++言語で開発した「LLVMコンパイラの拡張」,C言語で開発した独自のリアルタイムOS「Mcube Kernel」をGitHubにオープンソースとして公開. 2020年1月~現在はアメリカのノースカロライナ州チャペルヒルにあるGuarantee Happin

                                                                        【C言語】POSIXのメッセージキューの使い方
                                                                      • C++マニアック,pair の使い方,usage of pair,C++入門,C++言語講座

                                                                        pair は STL のヘッダ <utility> で定義されている、二つの要素のペアを入れる入れ物です。 二つの要素 first と second の呪縛から逃れる STL 関連本 二つの要素 ページの先頭へ pair は二つの要素を入れる入れ物です。それぞれの要素は C++ のオブジェクトで、その型はテンプレート引数で決まります。簡単な例を見て見ましょう。この場合、int と float がテンプレート引数です。 #include <utility> using namespace std; int main() { pair<int, float> pairif; pairif.first = 1; pairif.second = 2.3f; } pair は基本的には、次のように定義された struct PAIR に良く似ています。 struct PAIR { int first;

                                                                        • C言語で1から乱数を返す関数をつくる. - Qiita

                                                                          動機 C言語で1から乱数を返す関数をつくってみました. C言語には標準で乱数を生成するrand()関数が用意されています.ただ,この関数は1つの乱数しか返さないため,モンテカルロ法のような乱数を大量に使う場合少々不便です. そのため,空の配列と要素数を与えるとその配列に乱数を入れてくれるような関数があれば便利だと思い,実際に作ってみました. せっかくなので,乱数の生成に関するアルゴリズムにも少々触れながら解説していきたいとおもいます. コード rand()の拡張版: randint(uint32_t *xp, int nums) まず第一ステップは,整数の擬似乱数の配列を返す関数の作成です. rand()関数をfor文で回すのもバカバカしいので,乱数の生成部分も自分で書きました. ところでみなさんはコンピュータがどのようにして乱数を生成しているか知っていますか? 実はある初期値(seed)

                                                                            C言語で1から乱数を返す関数をつくる. - Qiita
                                                                          • スタック領域、ヒープ領域という概念はC言語(Cコンパイラ)が発明したアイデアですか?

                                                                            回答 (4件中の1件目) 概念的なものでしたら、仮想メモリーや、動的メモリー割合てに関連する技術とその仕組みのことですので、20世紀後半ぐらいに、ちょうどコンピューター黎明期にあたる時期に様々なアイデアが生まれ、実装されています。 その後、「ヒープ」と「スタック」のような固有名称として認識が広まりはじめるのは、C言語やJavaが増えつつ時代ですので、だいたい20世紀末期ぐらいだろうと思いますで。 もともと、メモリーへのスタックの考え方などは、C言語が無かった時代でも、そのままアセンブリ言語では、レジスタの値を退避するため、PUSH POP命令を使ってスタック動作を実現しています。 ...

                                                                              スタック領域、ヒープ領域という概念はC言語(Cコンパイラ)が発明したアイデアですか?
                                                                            • 初めてのRaspberry Pi Pico ㉙ C言語 I2S その1 - Qiita

                                                                              I2Sのサンプルにsine_waveがあります。これを動かします。 環境を整える 第8回で、pico/worksのディレクトリで開発をするように環境を整えました。その延長の設定です。I2Sのライブラリは、/pico/pic-extrasに入っているので、そのためのパスを通します。 /home/pi/picoにworksフォルダを作っています。 CmakeLists.txt、pico_sdk_import.cmakeファイルとcmakeフォルダが入っています。ここに、pico_extras_import.cmakeファイルを追加します。このファイルは、/home/pi/pico/pico-playgroundに置いてあったものをコピーしてきます。 pico_sdk_import.cmakeとpico_extras_import.cmakeは中身はそのままです。CmakeLists.txtの内

                                                                                初めてのRaspberry Pi Pico ㉙ C言語 I2S その1 - Qiita
                                                                              • UbuntuのTerminalでUnix Domain Socketを使ってIPCするC言語実装の最小構成サンプル - Qiita

                                                                                今回のサンプルを実装した元々の目的はAndroid NativeでのSocketを使ったIPCの概要をざっくり知ることでした. TL;DR (長い三行で) 実装はServer側とClient側の2種類,.c 2ファイル. .cをgccでCompileして実行Fileを2つ出力. それぞれ別Terminal(別Process)上で実行し,文字列メッセージを送受信する. Socketの種類 Socket自体は通信方式やProtocolの実装は規定していないようで,今回のような同一Host内のIPCでも,他Host間のTCP/IP等の通信も可能になっているようです. 今回は同一Host内のIPCをSocketをつかって実装します. Build方法 gccを使って.cを実行Fileにcompileします. 今回のサンプルは実装が超シンプルなので,何のOption指定もしなくても試すことはできます.

                                                                                  UbuntuのTerminalでUnix Domain Socketを使ってIPCするC言語実装の最小構成サンプル - Qiita
                                                                                • C言語の初心者向けおすすめサイト|C言語プログラミング診断室

                                                                                  今回はC言語の初心者向けです。 組込みファームウェアには、C言語を使うことが多いかと思います。歴史の長い言語ですので書籍など重要な情報もたくさんありますね。入門書から上級者向けまで様々です。ただ、基本的にどの書籍も「このようにコーディングすると良い」「これがいけてるコードだ」というように、良いコードしか載っていないのがほとんどです。普通、汚いダメなコードなんて書籍に載せませんからね。 ただ、それだとダメなタココードと良いコードの差がわかりづらいと思うんですよね。数学の試験でいきなり解答を見せられても、そこに至る思考プロセスがわからない、みたいな。特に経験値の低い初心者の方はそうだと思います。そこで、そのような悩める初心者にオススメしたいのが下記のサイトです。 Cプログラミング診断室 コードの記述の仕方が多少古いのですが、指摘内容自体は今でも頷けるものが多いです。ダメダメなタココードを紹介し

                                                                                    C言語の初心者向けおすすめサイト|C言語プログラミング診断室