shonen.hateblo.jp

やったこと,しらべたことを書く.

古いGCCのシフト演算子の評価値の拾い方が違う

C++コンパイラ依存シリーズ

古いGCCの評価値の拾い方がおかしい.

・・・こんなコードはまず書かないだろうけれど.

code

#include <iostream>
using namespace std;

int main(){
    int x = 0;
    auto f = [&x](){return ++x;};
    cout << x << f() << f() << f() << x << endl;
    return 0;
}
続きを読む

whitespace(esolang) メモのまとめ

2018/08/10 ヒープ操作追記

2018/09/06 負整数について追記

whitespaceとは

  • esolang
  • スタックベース

参考URL

  • [https:;hackage.haskell.org/package/whitespace-0.4/src/docs/tutorial.html]
  • 以下,「本家」と呼ぶものはwspace 0.3 (ideoneで試せるもの)とする.

以降の表記

空白は見にくいので,次のように表記する

  • 半角スペース S
  • タブ T
  • LF改行 L

読みやすさのために,スペースやアンダーバーを入れることがある.

whitespace 0.3と0.4の違い

  • shuffleが実装されている
    • スタックをランダムに並び替える S_TTS 命令がある
続きを読む

gprof を触りだけ

gprofとは

プロファイラ.

参考

https://www.howtoforge.com/tutorial/how-to-install-and-use-profiling-tool-gprof/

環境

paiza cloud.

~$ g++ --version
g++ (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
~$ gprof --version
GNU gprof (GNU Binutils for Ubuntu) 2.26.1
Based on BSD gprof, copyright 1983 Regents of the University of California.
This program is free software.  This program has absolutely no warranty.

(bash on ubuntu) は関数がうまく拾えないのか,何も表示されませんでした.(バージョン違いかも?)

続きを読む

クエリちゃん x プロ生ちゃん 夏休み #プチプログラミング コンテスト2018 に応募しました

気軽なイベントらしいので,気軽なコード(?)を書きました(?).

夏休みプチプログラミングコンテスト2018 とは

テーマ『夏休みの宿題(小学生な感じの夏休みをイメージ)』に沿った短め(長めでもOK)のコードを投稿するイベント.

pronama.azurewebsites.net

作ったもの

サンプルが算数ドリルを生成するコードだったので, 夏休み中の出校日をイメージして(?),算数ドリルの丸付けのコードを書きました.

続きを読む