[C++] Komentar pada Source Code C++


Dalam penulisan kode program, pasti akan banyak menuliskan sintaks-sintaks yang berisi perintah suatu program. Semakin panjang kode yang dibuat, semakin sulit untuk dimengerti oleh pengembang software lain. Untuk itulah diperlukan komentar. Komentar memang tidak akan ikut dikompilasi, tetapi sangat membantu ketika dalam proses maintenance suatu program. Alangkah baiknya setiap program yang dibuat ditambahkan dengan komentar juga.

Komentar Inline dengan //

Komentar ini diawali dengan tanda // dan teks dibelakang tanda tersebut akan dianggap sebagai komentar sampai dengan penggantian baris baru. Komentar jenis ini tidak dikenali pada C, hanya pada C++. Berikut ini adalah contoh penggunaan komentar inline.

// Komentar inline untuk satu baris
int i; // Mendeklarasikan variabel i sebagai integer

Perlu diperhatikan bahwa

// Komentar inline untuk
satu baris
int // Mendeklarasikan variabel i sebagai integer i;

Kode di atas akan memiliki kesalahan, sebab satu baris tidak dianggap sebagai komentar. Selain itu i; tidak dianggap sebagai identifier, melainkan dianggap sebagai sebuah komentar.

Komentar Blok dengan /*...*/

Komentar ini digunakan ketika ingin menuliskan yang komentar dalam bentuk blok. Komentar blok diawali dengan /* sampai ditemukan */ yang pertama.

/* Komentar blok bisa juga untuk satu baris */
int /* Mendeklarasikan variabel i sebagai integer */ i;
/* Komentar blok
   juga bisa
   menuliskan untuk lebih dari satu baris */

Perlu diperhatikan, tidak boleh melakukan nested komentar blok dalam komentar blok.

/* Tidak boleh melakukan /* nested komentar blok */ dalam komentar blok */

Hal ini menyebabkan, dalam komentar blok */ dianggap sebagai identifier, bukan sebagai komentar blok. Karena tanda */ telah ditemukan terlebih dahulu sebelum teks dalam komentar blok */.

[C++] Struktur Program C++


Hello World!

Biasanya untuk mempelajari sebuah program, akan dimulai dengan membuat program

HelloWorld. Berikut ini adalah program HelloWorld pertama:

// File		 : HelloWorld.cpp
// Deskripsi : Program HelloWorld
// Author	 : Edward Samuel
// Tanggal	 : 23 Maret 2012
#include <iostream>;
using namespace std;
int main() {
	cout << "Hello World!" << endl;
	return 0;
}

Misalnya simpan dengan nama HelloWorld.cpp di direktori C:\BelajarCPP\ (pada Windows) atau \home\Edward\BelajarCPP\ (pada Linux). Buka command prompt (pada Windows) atau terminal (pada Linux). Masuklah ke direktori tempat kode tersebut disimpan dengan perintah cd. Maka dapat menggunakan perintah:

C:
cd \BelajarCPP\

atau pada Linux

cd \home\Edward\BelajarCPP\

Untuk menjalankannya, lakukan compile terlebih dahulu dengan perintah: g++ -o HelloWorld HelloWorld.cpp

dengan HelloWorld adalah nama file executeable output dan HelloWorld.cpp adalah nama file source code. Jalankan program dengan perintah HelloWorld (pada Windows) atau .\HelloWorld.

C:\BelajarCPP>g++ -o HelloWorld HelloWorld.cpp

C:\BelajarCPP>HelloWorld
Hello World!

Setelah menjalankan maka akan muncul tulisan HelloWorld! pada console.

Penjelasan

  1. Baris 1-4:
    // File : HelloWorld.cpp
    // Deskripsi : Program HelloWorld
    // Author : Edward Samuel
    // Tanggal : 23 Maret 2012
    Kode yang diawali dengan // merupakan sebuah komentar-inline (akan dijelaskan kemudian). Komentar tidak memiliki pengaruh dalam kode program. Komentar hanya merupakan penjelas suatu kode.
  2. Baris 5: #include <iostream>;
    Kode yang diawali dengan # merupakan sebuah preprocessor (akan dijelaskan kemudian). Preprocessor memberitahukan compiler untuk melakukan sesuatu sebelum melakukan kompilasi. Preprocessor #include akan memberitahukan kompiler untuk meng-include iostream library yang berguna untuk standar input-output pada C++.
  3. Baris 6: using namespace std;
    Tujuan dari penulisan kode ini adalah untuk melakukan penulisan kode langsung tanpa penulisan scope std::. Hal ini dikarenakan, pada iosteam C++ melakukan pembungkusan semua fungsi input-output dalam namespace std (akan dijelaskan kemudian pada topik “namespace”). Jika tidak dilakukan, maka program baris 8 harus ditulisakan:

    std::cout << "Hello World!" << std::endl;

    Cukup merepotkan jika harus menulis lengkap demikian, maka penggunaan using sangat diperlukan.

  4. Baris 7: int main() {
    Kode ini menyatakan pembuatan suatu fungsi main. Setiap program C/C++ harus memiliki sebuah main. main merupakan kode awal yang akan dieksekusi ketika program dijalankan.
  5. Baris 8: cout << "Hello World!" << endl;
    Merupakan sebuah C++ statement. C++ statement inilah yang mempengaruhi langsung eksekusi program. Statement pada contoh ini menyatakan bahwa cetak “HelloWorld!” dan end-line pada output-stream cout.
    cout sendiri berada dalam library iostream dengan namespace std, oleh karena itu dilakukan perintah include seperti pada baris 5-6.
    Setiap statement dalam C++ harus diakhiri dengan ;
  6. Baris 9: return 0;
    Menyatakan hasil keluaran dari fungsi main() adalah 0. Pada C++, return 0 dalam main() menyatakan bahwa program berakhir dengan normal.

[C++] Compiler C++


Konsep Kompilasi Program C++

Secara sederhana, proses kompilasi suatu program C++ dilakukan melalui tahapan berikut:

  1. Preprocessor: Source Code yang telah dibuat akan diperiksa bagian preprocessor yang ditandai dengan #. Misalnya #include, #define, #ifdef, dll. (akan dijelaskan kemudian).
  2. Compiler: menerjemahkan source code yang telah dibuat menjadi assembly code (bahasa mesin).
  3. Assembler: menerjemahkan assembly code menjadi object code. Jika tidak menggunakan library lain, maka akan dieksekusi langsung menjadi executeable.
  4. Linker: menggabungkan object code dan library menjadi sebuah executeable.

Compiler C++

Pada tutorial ini, khusus untuk lingkungan Windows digunakan compiler yang disediakan oleh TDM-GCC. Silahkan men-download paket bundle.
Untuk pengguna Linux dapat mencari instalasi gcc yang disertai add-on g++.

Cara Compile dan Run Program C++

Untuk melakukan kompilasi program langsung menjadi executeable, dapat menjalankan perintah:

g++ -o namaprogram sourcecode1.cpp sourcecode2.cpp sourcecoden.cpp

dengan namaprogram merupakan nama file executeable output, sourcecodei.cpp merupakan kode program dalam bahasa C++.
Untuk menjalankan program, pada Windows

namaprogram

dan pada Linux

./namaprogram

Cara Compile dan Run Program C++ (dengan Pembuatan Object Code)

Untuk melakukan pembuatan program dengan terlebih dahulu membuat object code, dapat menjalankan perintah:

g++ -c sourcecode.cpp [-o objectcode.o]

dengan mengeksekusi perintah di atas, maka akan terbentuk file sourcecode.o (jika tidak mengatur output-nya).
Linking object code dilakukan dengan:

g++ -o namaprogram objectcode1.o objectcode2.o objectcoden.o

[Java] Install, Compile, dan Run Program Java pada Windows


Berikut ini adalah cara melakukan kompilasi (compile) dan menjalankan (run) program Java dengan SDK Java yang disediakan oleh Sun Microsystem melalui command prompt tanpa menggunakan IDE (misalnya Eclipse atau NetBeans).

Install Java (Java Development Kit/JDK)

Buka http://www.oracle.com/technetwork/java/javase/downloads/index.html. Download Java Platform, Standard Edition bagian JDK. Ikuti petunjuk peng-install-an.
Untuk memastikan Java telah terinstall dengan benar, coba jalankan perintah java -version di command prompt. Jika tampil versi Java, maka penginstallan Java telah berhasil.

C:\>java -version
java version "1.7.0_03"
Java(TM) SE Runtime Environment (build 1.7.0_03-b05)
Java HotSpot(TM) 64-Bit Server VM (build 22.1-b02, mixed mode)

Mengatur Environment Variable: PATH

  1. Buka System Properties (klik Start | klik kanan di Computer | Properties | Klik Advanced system settings di panel sebelah kiri)
  2. Buka tab Advance, lalu klik Environment Variables.
  3. Klik PATH, lalu klik Edit…
  4. Tambahkan dibagian akhir, direktori BIN dari Java Development Kit (JDK) sesuai versi yang di-install, misalnya untuk JDK 7 update 3 pada direktori C:\Program Files\Java\jdk1.7.0_03\bin.

    Perhatian! Hati-hati dalam meng-edit PATH. Jika PATH sudah ada, tambahkan di bagian akhir dengan ; lalu diikuti direktori bin JDK tanpa spasi. Jika belum ada PATH, buatlah baru dengan New…. Kesalahan dalam mengedit PATH dapat mengakibatkan beberapa program lain tidak berjalan dengan benar.

  5. Klik OK.
  6. Untuk memastikan setting telah berjalan dengan benar, coba jalankan perintah javac -version
    C:\>javac -version
    javac 1.7.0_03
    

Jika sebelumnya sedang membuka command prompt dan tidak berhasil menjalankan javac, coba tutup command prompt, lalu buka kembali.

Compile Program Java

Untuk meng-compile, jalankan perintah javac namafile.java dengan namafile adalah source code yang ingin di-compile.

Misalkan, ketikan source code berikut

public class HelloWorld {
    public static void main(String args[]) {
        System.out.println("Hello World!!");
    }
}

Simpan dengan nama HelloWorld.java di C:\TestJava\
Buka command prompt (Start | Ketik cmd | Enter), masuk ke direktori C:\TestJava\ (Gunakan perintah cd).
Jalankan perintah javac HelloWorld.java
Jika berhasil, akan terdapat sebuah file .class yaitu bytecode program Java. Java tidak membuat file executeable (.exe) melainkan .class tersebut. Jika tidak berhasil, lakukan perbaikan kode sesuai yang diberikan petunjuk, lalu coba compile kembali.

Menjalankan Program Java

Untuk menjalankan program Java, jalankan perintah java namafile dengan namafile adalah file .class yang ingin dijalankan (tanpa ekstensi .class).
Pada contoh kasus di atas, jalankan dengan perintah java HelloWorld.

[FreeBSD] Memodifikasi Account: Add, Delete, Change Password


Memodifikasi account/user pengguna suatu komputer kadang sangat diperlukan. Beberapa hal yangbisa dilakukan misalnya menambah pengguna (add user), menghapus pengguna (delete user) dan mengganti password pengguna (change password). FreeBSD menyediakanperintah untuk melakukan semua hal itu.

Add New User

Untuk menambah pengguna baru, dapat dilakukan dengan perintah: adduser. Tetapi untuk melakukan hal itu harus memiliki hak akses super-user (root). Berikut adalah contoh penjalanan perintah adduser:

# adduser
Username: edward
Full name: Edward Samuel
Uid (Leave empty for default):
Login group [edward]:
Login group is edward. Invite edward into other groups? []: wheel
Login class [default]:
Shell (sh csh tcsh zsh nologin) [sh]: tcsh
Home directory [/home/edward]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password:
Enter password again:
Lock out the account after creation? [no]:
Username   : edward
Password   : ****
Full Name  : Edward Samuel
Uid        : 1001
Class      :
Groups     : edward wheel
Home       : /home/edward
Shell      : /usr/local/bin/tcsh
Locked     : no
OK? (yes/no): y
adduser: INFO: Successfully added (edward) to the user database.
Add another user? (yes/no): n
Goodbye!

Remove Account

Untuk menghapus pengguna terdaftar, dapat dilakukan dengan perintah: rmuser [username]. Tetapi untuk melakukan hal itu juga harus memiliki hak akses super-user (root). Berikut adalah contoh penjalanan perintah rmuser:

# rmuser
Please enter one or more usernames: edward
Matching password entry:

edward:*:1001:0::0:0:Edward Samuel:/home/edward:/bin/tcsh

Is this the entry you wish to remove? y
Remove user's home directory (/home/edward)? y
Removing user (edward): mailspool home passwd
# rmuser edward
Matching password entry:

edward:*:1001:0::0:0:Edward Samuel:/home/edward:/bin/tcsh

Is this the entry you wish to remove? y
Remove user's home directory (/home/edward)? y
Removing user (edward): mailspool home passwd

Catatan: Useraccount root tidak dapat dihapus karena dapat menyebabkan kerusakan pada system (tidak memiliki user dengan kekuasaan tertinggi).

Change Password

Untuk mengganti password useraccount yang sedang aktif, dapat menjalankan perintah passwd.

> passwd
Changing local password for edward.
Old password:
New password:
Retype new password:

Bagaimana untuk mengganti password pengguna lain (changing other users password)? Dapat passwd [username], tetapi tetap harus memiliki hak akses root.

# passwd edward
Changing local password for edward.
New password:
Retype new password:

Tahap Lanjut

Untuk mengetahui lebih dalam tentang perintah adduser, rmuser, passwd. Dapat membaca FreeBSD Manual

# man adduser
# man rmuser
# man passwd

[Fedora] Memunculkan Minimize dan Maximize Button pada Jendela Fedora


Pada saat pertama kali menjalankan Fedora 16, agak terasa aneh ketika tombol (button) minimize dan maximize hilang dari setiap jendela (window) Fedora 16. Padahal kedua tombol itu sangat membantu dan  cukup sering digunakan jika melakukan multitasking.

Sebenarnya untuk melakukan maximize window bisa dilakukan dengan meng-klik ganda title bar. Sedangkan untuk minimize window dilakukan dengan meng-klik kanan title bar lalu memilih Minimize. Namun karena terbiasa dengan klik tombol minimize dan maximize, maka lebih nyaman jika kedua tombol itu dimunculkan kembali.


Sebelum Pengaturan Minimize dan Maximize Button


Sesudah Pengaturan Minimize dan Maximize Button

Untuk mendapatkan kedua tombol tersebut, ikuti langkah berikut

  1. Download dan install gconf-editor (user harus mempunyai hak admin)
    # yum install gconf-editor
    Jika tidak mempunyai hak admin, dapat dilakukan dengan pemanggilan perintah
    $ sudo yum install gconf-editor
    Atau dengan melakukan perintah
    $ su
    # yum install gconf-editor
    # exit
  2. Jalankan gconf-editor
    $ gconf-editor
  3. Navigasi ke
    / → desktop → gnome → shell → windows

  4. Klik pada bagian button_layout untuk mengganti value dari atribut tersebut.
    Ganti menjadi (minimize, maximize, dan close tidak dipisahkan oleh sebuah space)
    menu:minimize,maximize,close
    atau (minimize, maximize, dan close dipisahkan oleh sebuah space)
    menu:minimize,maximize,spacer,close
  5. Logout dan Login kembali untuk melihat perubahan.

Maka, tombol minimize dan maximize akan muncul kembali dan dapat digunakan seperti biasa.