C/C++の#if 0とは

October 3,2017 12:03 AM
Category:[C/C++]
Tag:[C/C++]
Permalink

C/C++の"#if 0"について調べてみました。

1.はじめに

既存システムのC++のプログラムに、下記の"#if 0"という記述がありました。

#if 0
    // 処理A
#else
    // 処理B
#endif

ビルドすると、どちらが動作するのか分かりません。

ということで、C/C++の"#if 0"について調べてみました。

2.#if 0とは

まず、"#if"ディレクティブはプリプロセッサの1つで、"#if 0"と書くことで判定結果は常に偽となり、処理Aはコンパイル対象にならないことを意味します。

つまり、前述のプログラムをコンパイルすることで、プリプロセッサでプログラムから処理Aが除外され、

    // 処理B

という部分のみがコンパイル対象になります。

ちなみに、"0"を"1"に書き換えて、

#if 1
    // 処理A
#else
    // 処理B
#endif

とすれば、常に処理Aのみがコンパイル対象になります。

処理Aや処理Bの部分のコード量が多い場合、処理を切り替えるコメントアウト代わりに使えそうです。

Comments [0] | Trackbacks [0]

セブンイレブンのプリンタでスキャンする方法

October 2,2017 12:03 AM
Category:[サービス]
Tag:[Print]
Permalink

セブンイレブンのプリンタでスキャンする方法を紹介します。

1.はじめに

以前、「コンビニで文書や画像をプリントする方法」という記事を書き、ネットプリントでスキャンできることを知り、この記事で操作方法をまとめてみることにしました。

スキャナをとるために必要なものは、スマホまたはUSBメモリです。

ここではUSBメモリを利用したスキャンについて紹介します。

2.ネットプリントでスキャンするる

左側にある「スキャン」をタップ。

スキャン

左側の「USBメモリー」をタップ。

USBメモリー

スキャン使用同意画面になるので「同意する」をタップ。

スキャン使用同意画面

画面上にある機械の静電除去マットに触れて「確認」をタップ。

機械の静電除去マット

USBメモリをセットして「セット確認」をタップ。

USBメモリをセット

USBメモリの容量を確認して問題なければ「確認」をタップ。

USBメモリの容量を確認

スキャンするモード(カラー・白黒)およびサイズを確認し、問題なければ「これで決定」をタップ。原稿はまだセットしなくても大丈夫です。

スキャンするモード(カラー・白黒)およびサイズを確認

ファイルの形式を選択して「これで決定」をタップ。この記事ではPDFを選択します。

ファイルの形式を選択

原稿をセットして「原稿を読み取る」をタップ。お金はまだ入れなくても大丈夫です。

原稿をセット

原稿を読み取っています。

原稿読み取り

スキャンのプレビューを確認して、問題なければ「これで決定」をタップ。この画面で画像を回転させることもできます。

スキャンのプレビュー

続けてスキャンする場合はこの画面で「原稿を読み取る」をタップ。

続けてスキャン

スキャンを終了する場合は「これで決定 読み取り終了」をタップ。

スキャンを終了

「保存スタート」をタップ。タップする前にお金をいれてください。

保存スタート

USBメモリに書き込み中です。

書き込み中

書き込みが完了しました。「USBメモリーを取りはずす」をタップ。

書き込みが完了

USBメモリーを取りはずします。

USBメモリーを取りはずし

領収書が必要であれば「領収書をプリントする」をタップ。

領収書をプリント

これで完了です。おつかれさまでした。

完了

Comments [0] | Trackbacks [0]

JenkinsをRPMでインストールする方法

September 25,2017 12:03 AM
Category:[Jenkins]
Tag:[Jenkins]
Permalink

JenkinsをRPMでインストールする方法を紹介します。

1.はじめに

JenkinsをLinuxにyumでインストールするには、OS標準のパッケージにJenkinsのリポジトリが含まれていないので、Jenkins公式サイトが公開しているリポジトリを追加します。

% sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
% sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key

その後yumコマンドを実行すればインストールできます。

% sudo yum install jenkins

が、マシンがネットに接続されていない環境ではwgetが使えません。

ということで、JenkinsをRPMでインストールする方法を紹介します。

ここではRedHat Linuxを例に説明します。

2.JenkinsをRPMでインストールする

JenkinsをRPMでインストールするには、「RedHat Linux RPM packages for Jenkins」のページにアクセスして、「Individual Package Downloads」の下に表示されているrpmの一覧から任意のリンクをクリックします。

Jenkins RPM

ダウンロードしたrpmをサーバにアップロードして、ファイルを配置したディレクトリで下記のrpmコマンドを実行します。

# rpm -ivh jenkins-1.658-1.1.noarch.rpm
警告: jenkins-1.658-1.1.noarch.rpm: ヘッダ V4 DSA/SHA1 Signature, key ID d50582e6: NOKEY
準備中...                ########################################### [100%]
   1:jenkins                ########################################### [100%]

これでJenkinsがインストールされました。

Jenkins本体のwarファイルは"/usr/lib/jenkins"に配置されます。

ちなみにJenkinsの起動は、

# service jenkins start
Starting Jenkins                                           [  OK  ]

で、エラーメッセージがなく、"[OK]"が表示されればOKです。

あとはブラウザでサーバの8080ポートにアクセスすれば、

http://xx.xx.xx.xx:8080/

Jenkinsの画面が表示されます。

Jenkinsの画面

なお、インストールしたサーバにはOpenJDK 1.7.0がインストールされていて、jenkinsを2017年9月現在の最新バージョン「jenkins-2.79-1.1.noarch.rpm」をインストールしたところ、Jenkinsの起動で、

# service jenkins start
Starting Jenkins Jenkins requires Java8 or later, but you are running 1.7.0_09-icedtea-mockbuild_2013_01_16_18_52-b00 from /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.9.x86_64/jre
java.lang.UnsupportedClassVersionError: 51.0
        at Main.main(Main.java:124)
                                                           [  OK  ]

というエラーになりました。

Javaバージョンが1.7の場合、Jenkins1.x系が対応するようです。

3.参考サイト

参考サイトは下記です。ありがとうございました。

Comments [0] | Trackbacks [0]
 1  |  2  |  3  |  4  |  5  | All pages