有趣的 C++ 地圖(2017 年版本)

這是 АЛЁНА C++ 所創作的一張有趣的 C++ 地圖,上面標示了各種 C++ 程式語言的標準與語法,雖然不是相當精準,不過看起來非常有趣。 這張圖原始檔解析度是 3840×2555,可從 АЛЁНА C++ 的網站上下載,可用於非營利的用途。

February 27, 2017 · G. T. Wang

C 語言 setjmp 與 longjmp 函數用法教學

這裡介紹 C 語言的 setjmp 與 longjmp 函數的用法,還有典型的使用範例。 在 C 語言中的 goto 只能跳到函數內部的 label 位置,若要跳到其他函數中則必須使用 setjmp 與 longjmp,這兩個函數在深層的程式錯誤處理上非常好用。 ...

February 27, 2017 · G. T. Wang

CentOS Linux 7 自行編譯與安裝 GCC 6 編譯器教學

這裡介紹在 CentOS Linux 7 之下自己載 gcc 6 編譯器原始碼、編譯與安裝的過程。 gcc 是 Linux 系統上最常被使用的編譯器,而 CentOS Linux 7.2 中的 gcc 版本比較舊: gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux Thread model: posix gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) 如果想要使用比較新的功能,就會有問題。以下是自己下載 gcc 6.3.0 原始碼來編譯與安裝的過程。 ...

February 25, 2017 · G. T. Wang

C++ 程式語言 auto 自動變數類型語法教學與範例

這裡介紹 C++ 語言的 auto 自動變數類型的用法,並提供幾種使用範例程式碼。 在 C++14 標準跟前一版的 C++11 比較起來沒有太大的變革,大概都是改善舊的語法,讓程式設計者更方便使用,這裡我將介紹 auto 這個 C++11 所新增的自動變數類型,以及在 C++14 中的變革。 ...

February 23, 2017 · G. T. Wang

樹莓派 Raspberry Pi 自行編譯與安裝 GCC 6 編譯器教學

這裡介紹在樹莓派中自行編譯與安裝 gcc 6 編譯器的步驟。 目前樹莓派的 Raspbian Linux 作業系統內建的 gcc 版本為 4.9.2: gcc --version gcc (Raspbian 4.9.2-10) 4.9.2 Copyright (C) 2014 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. 如果需要更新版的 gcc 編譯器,就只能自己編譯了,以下是下載 gcc 編譯器原始碼,自行編譯與安裝的過程。 ...

February 21, 2017 · G. T. Wang