CXXFLAGSとCPPFLAGSの違い
MakefileのCXXFLAGSとCPPFLAGSの違いについて。 名前が似ているだけあって混同してしまっていることがあるので念の為に書いとく。 実は2つの変数の違いは公式ドキュメントを見ると一瞬で分かるので読む。 C…
MakefileのCXXFLAGSとCPPFLAGSの違いについて。 名前が似ているだけあって混同してしまっていることがあるので念の為に書いとく。 実は2つの変数の違いは公式ドキュメントを見ると一瞬で分かるので読む。 C…
前に書いた記事のPV伸びすぎなのと、最近fopen_s関数の存在を思い出したので改めてfopen_s関数について記事を書きます。 ちなみに前のfopen_s関数の記事は大学(.ac.jpドメイン)からのアクセスが結構ある…
1. fgets関数を使う方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
#include <stdio.h> #define BUF_SIZE 256 int main(void) { FILE *fp; char buf[BUF_SIZE]; int line = 0; if ((fp = fopen("example.txt", "r")) == NULL) { return -1; } while (fgets(buf, BUF_SIZE, fp) != NULL) { line++; } printf("%d\n", line); return 0; } |
fgets関数は1行ごとに読み込むので、読みこんだ回数 == 行数としてカウントしていくもの。 読み込みに失敗するとfge…
大学のシステム開発の演習をどう進めていくか決めたんですけども OSはWindows 理由: Windowsしかないから プログラミング言語はC 理由: 他の学生がCしか知らないから インターフェースはCUI 理由: 時間…
今までいろんなクソコード見たけど今度はもう無理だ。 クソコードすぎて降参だ。 でもこれを解読しなければいけない課題が出た。 謎の一文字変数連打
1 |
int k, j, i, n, m, x, y, z, q; |
どの変数が…
C言語のrand()はsrand()でシード値を与えないと、同じ乱数が出てくる。 そこでsrand((unsigned)time(NULL));で現在時刻をシード値として与える。 [crayon-673efb248492…
1 |
static int a = 100; |
staticという単語をつけて変数を宣言すると、関数を抜けても値が保持される。 よくこういう説明を初心者は受けることになる。 実際にそういう説明だった。 …
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#include <stdio.h> #include <string.h> int main(void) { int x = 1919; // x座標 int y = 4545; // y座標 char str1[10] = ""; char str2[10] = ""; sprintf(str1, "%d", x); // x座標を文字列に変換 sprintf(str2, "%d", y); // y座標を文字列に変換 strcat(str1, " "); // x座標の後に空白を追加 strcat(str1, str2); // y座標を追加 puts(str1); return 0; } |
最近演習中に発掘されたクソコードだ。 xとyが定数だが、実際にはWin32 APIを使ったプログラム中で、ウィンドウ中に描画する画像の座標が入る。 また、…
最近Exifデータを弄る機会があるので、自分用にソフトウェアを作ろうとしている。 C++でExifデータを読み書きできるExiv2というライブラリがあるので、それを使うことにした。 Exiv2の簡単な使い方を書いていこう…
ファイルを読み込む際にはstd::ifstreamクラスを使い、std::ifstream::read()で読み込める。
1 |
ifs.read(buf, length); |
charで読み込むことはできるの…