Showing posts with label CPP. Show all posts
Showing posts with label CPP. Show all posts

File Header C++ & Fungsinya

conio.h

  • getch () : Fungsi getch() (get character and echo) dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter yang dimasukan tidak akan ditampilkan di layar.
  • getche() : Fungsi getche()dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter yang dimasukan ditampilkan di layar.
  • putch() : Akan menampilkan karakter ASCII dari nilai x ke layer monitor tanpa memindahkan letak kursor ke baris berikutnya.
  • clrscr() : Fungsi ini digunkan untuk membersihkan layar window dan memindahkan posisi kursor ke baris 1 kolom 1 (pojok kiri atas).
  • clreol() : Fungsi ini digunakan untuk membersihkan layar mulai dari posisi kursor hingga kolom terakhir, posisi kursor tiak berubah.
  • gotoxy () : Fungsi gotoxy digunakan untuk memindahkan kursor ke kolom x, baris y.
  • wherex () : Fungsi wherex digunakan untuk mengembalikan posisi kolom kursor.
  • wherey () : Fungsi wherey digunakan untuk mengembalikan posisi baris kursor.
  • window () : Fungsi window digunakan untuk mendefinisikan sebuah window berdasarkan koordinat kiri atas dan kanan bawah.



iostream.h

  • cout() : Fungsi cout() merupakan sebuah objek didalam Borland C++ digunakan untuk menampilkan suatu data kelayar.
  • cin () : Fungsi cin() merupakan sebuah objeck didalam C++ digunakan untuk memasukkan suatu data.
  • endl : endl merupakan suatu fungsi manipulator yang digunakan untuk menyisipkan karakter NewLine atau mengatur pindah baris. Fungsi ini sangat berguna untuk piranti keluaran berupa file di disk.
  • ends : ends merupakan suatu fungsi manipulator yang digunakan untuk menambah karakter null ( nilai ASCII NOL ) kederetan suatu karakter. Fungsi ini akan berguna untuk mengirim sejumlah karakter kefile didisk atau modem dan mangakhirinya dengan karakter NULL.

math.h dan stdlib.h dipergunakan untuk prototype fungsi operasi matematika seperti : sqrt (akar kuadrat), sin, cos, tan, acos, asin, atan, atan2, cosh, sinh, tanh, exp, prexp, ldexp, log, log10, modf, pow, ceil, fabs, fmod

  • Sqrt() : Digunakan untuk menghitung akardari sebuah bilangan. Bentuk umum : sqrt(bilangan);
  • Sin(), cos(), tan() : Masing-masing digunakan untuk menghitung nilai sinus, conisius dan tangens dari suatu sudut. Bentuk umum: Sin(sudut); Cos(sudut); Tan(sudut);
  • Max() : Digunakan untuk menghitung hasil pembagian dan sisa pembagian. Bentuk umum : max(bilangan1, bilangan2);
  • Min() : Digunakan untuk menentukan bilangan terkecil dari dua buah bilangan. Bentuk umum : min(bilangan1, bilangan2).


stdio.h

  • printf() : Merupakan fungsi keluaran yang paling umum digunakan untuk menampilkan informasi kelayar. Bentuk Penulisan : printf(“penentu format”, argumen-1, argumen-2, …);
  • puts() : Perintah puts() sebenarnya sama dengan printf(), yaitu digunakan untuk mencetak string ke layar. puts() berasal dari kata PUT STRING. Perbedaan antara printf() dengan puts() adalah : printf() puts() .Harus menentukan tipe data untuk data tring, yaitu %s Tidak Perlu penentu tipe data string, karena fungsi ini khusus untuk tipe data string. Untuk mencetak pindah baris, memerlukan notasi ‘ \n ‘ Untuk mencetak pindah baris tidak perlu notasi ‘ \n ‘, karena sudah dibeikan secara otomatis.
  • putchar() : Perintah putchar() digunakan untuk menampilkan sebuah karakter ke layar. Penampilan karakter tidak diakhiri dengan pindah baris.
  • fprintf() : Digunakan untuk mencetak semua jenis tipe data ke printer dan secara otomatis memberikan efek perpindahan baris.
  • fputs() : Digunakan untuk mencetak tipe data string ke printer
  • fputc() : Digunakan untuk mencetak tipe data karakter ke printer
  • scanf() : Fungsi pustaka scanf() digunakan untuk menginput data berupa data numerik, karakter dan string secara terformat. Hal-hal yang perlu diperhatikan dalam pemakaian fungsi scanf(). Fungsi scanf() memakai penentu format. Fungsi scanf() memberi pergantian baris secara otomatis. Fungsi scanf() tidak memerlukan penentu lebar field. Variabelnya harus menggunakan operator alamat “&”. Bentuk umum fungsi scanf(): “ penentu format “, &variabel. Penentu format : kode format untuk konversi data “&” Operator untuk pointer, yang digunakan untuk penempatan alamat dari nilai variabel di memori. Variabel : variabel yang akan menampung nilai yang dimasukkan Penentu Format scanf()
  • gets() : Fungsi gets() digunakan untuk memasukkan data bertipe karakter dan tidak dapat digunakan untuk memasukkan data numerik. Penulisan fungsi gets() harus diakhiri dengan penekanan tombol enter. Fungsi gets() akan menyebabkan kursor secara otomatis akan pindah baris, fungsi gets() tidak memerlukan penentu format. Perbedaan scanf() dengan gets(). scanf() dan gets() tidak dapat menerima string yang mengandung spasi atau tab dan dianggap sebagai data terpisah Dapat menerima string yang mengandung spasi atau tab dan masing dianggap sebagai satu kesatuan data.
  • getchar() : Fungsi getchar() digunakan untuk membaca data yang bertipe karakter, penggunaan fungsi getchar harus diakhiri dengan penekanan tombol enter. Karakter yang dimasukkan akan terlihat pada layar dan pergantian baris akan dilakukan secara otomatis tanpa penekanan tombol enter. Fungsi getchar tidak menggunakan argument, tetapi langsung memberikan hasil karakter yang dimasukkan.



stdlib.h

  • Atof() : Digunakan ntuk mengkonversi nilai string menjadi bilangan bertipe double. Bentuk umum : atof(char x);
  • Atoi() : Digunakan untuk menghitung hasil pembagian dan sisa pembagian. Bentuk umum : div_t div(int x, int y)
  • Pow() : Digunakan untuk pemangkatan suatu bilangan. Bentuk umum : pow(bilangan, pangkat).


iomanip.h

  • dec, oct dan hex : dec, oct dan hex merupakan suatu fungsi manipulator yang digunakan untuk menampilkan data dalam bentuk desimal, oktal dan hexadesimal.
  • setprecision () : Fungsi setprecision() merupakan suatu fungsi anipulator yang digunakan ntuk mengatur jumlah digit desimal yang ingin ditampilkan. Fungsi ini biasa pada fungsi cout().
  • setbase (int n) : Fungsi setbase () merupakan suatu fungsi manipulator yang digunakan untuk mengkonversi ke bilangan basis n (n= 8, 10 atau 16)
  • setw(int n) : Fungsi setw(int n) merupakan suatu fungsi manipulator yang digunakan untuk mengatur lebar field (spasi) untuk suatu nilai sebesar n karakter
  • setfill(int c) : Fungsi setfill(int c) merupakan suatu fungsi manipulator yang digunakan untuk menyetel karakter pemenuh berupa c
  • setiosflags(long f) : Fungsi setiosflags()merupakan suatu fungsi manipulator yang digunakan untuk menyetel format yang ditentukan oleh f
  • resetiosflags(long f) : Merupakan suatu fungsi manipulator yang digunakan untuk menghapus format yang ditentukan oleh f


Untuk operasi string

  • Strcpy() : Berfungsi untuk menyalin suatu string asal ke variablel string tujuan. Bentuk umum : strcpy(var_tujuan, string_asal);
  • Strlen() : Berfungsi untuk memperoleh jumlah karakter dari suatu string. Bentuk umum : strlen(tujuan, sumber);
  • Strupr() : Digunakan untuk mengubah setiap huruf dari suatu string menjadi huruf capital. Bentuk umum : strlupr(string);
  • Strcmp() : Digunakan untuk membandingkan dua buah string. Hasil dari fungsi ini bertipe integer dengan nilai: Negative, jika string pertama kurang dari string kedua. Nol, jika string pertama sama dengan string kedua Positif, jika string pertama lebih besar dari string kedua. Bentuk umum : strcmp(string1, string2);
  • strupr() : Digunakan untuk mengubah huruf menjadi capital. Bentuk umum : strupr(string)
  • strlwr() : Digunakan untuk mengubah huruf menjadi kecil semua. Bentuk umum : strlwr(string)
  • strcmp() : Digunakan untuk membandingkan dua string. Bentuk umum : strcmp (string1, string2)
  • strcat () : Digunakan untuk menggabungkan string. Bentuk umum : strcat(string1,string2)


Untuk operasi karakter

  • islower() : Fungsi akan menghasilkan nilai benar (bukan nol)jika karakter merupakan huruf kecil. Bentuk umum : islower(char);
  • isupper() : Fungsi akan menghasilkan nilai benar(bukan nol) jika karakter merupakan huruf capital. Bentuk umum : isupper(char);
  • isdigit() : Fungsi akan mengahsilkan nilai benar(bukan nol) jika karakter merupakan sebuah digit.

  • Bentuk umum : isdigit(char);
  • Tolower() : Fungsi akan mengubah huruf capital menjadi huruf kecil. Bentuk umum : tolower(char);
  • Toupper() : Fungsi akan mengubah huruf kecil menjadi huruf capital. Bentuk umum : toupper(char);

courtsey:
http://www.catatanrama.com/pengenalan-dan-fungsi-file-header-pada-c/

Pesan error di C++

Pesan error di C++

1.      Argument List syntax eror
Yaitu adanya kesalahan pada daftar  argument fungsi

2.      Array bounds missing ]
Array pada program harus di akhiri dengan kurung siku

3.      Array size too large
Ukuran harga yang di deklarasikan terlampau pembesar.

4.      Assember statemen too long
Kode dalam bahasa mesin / tidak boleh lebih dari dari 480 byte.

5.      Bad file name format include directive
Nama file yang akan disertakan dalam satu program melalui # include,harus di apit oleh tanda khusus.contoh “nama.h” atau (nama file.h)

6.      Bit file field 100 large
Sebuah bit file field harus didefinisikan dengan dengan lebar berupa angkapan kostanta bernilai antara 1 (satu) dan 16 (enam belas)

7.      Call of-nan fungtion
Fungsi yang di pangil ternyata di deklarasikan bukab sebagai fungsi,melainkan misalnya dideklarasikan sebagai variable.

8.      Connot modify a const object
Nilai objek yang dideklarasikan dengan kata-kata cost,tidak dapat diubah.ada ungkapan atau pernyataan yang mengubah nilainya.

9.      Cost syntax eror
Ada type cost (konvensi type) yang symbol tadak tepat.

10.  Caracter constant too long
Panjang constant karakter maksimal hanya dua karakter.

11.  Compound statement missing }
Kekurangan tanda kurung kurawal penutup pada program.periksa jika ada kesalahan meletakkan tanda kurug kurawal.

12.  Conflicting type modifier
Dua buah modifier (modifikasi type) seperti near dan far tidak boleh digunakan secara bersamaan untuk modifikasi type.

13.  Constant expression required
Ukuran array harus dinyatakan dengan suatu konstanta

14.  Could not find file ‘xxx’
Artinya file ‘xxx’ tidak ditemukan.

15.  Declaration missing ;
Pendeklarasian file struk atau union harus diikuti dengan tanda titik koma(;).

16.  Declaration needs type or strange class
Suatu deklarasi harus memiliki palinh tidak satu tipe dan satu kolos penyimpanan.

17.  Declaration syntax error
Ada pernyataan yang simbolnya kurang atau terlalu banyak.

18.  Default outside of switch
Ada perintah default yang terletak di luar pernyataan switch.Biasanya hal ini di sebabkan kesalahan penempatan penempatan kurung kurawal (}).

19.  Define directive needs an identifier.
Define harus diikuti dengan identifier atau krakter spasi,selain itu tidak di benarkan.

20.  Division by zero
Ada pembagian suatu bilangan konstanta dengan nol (0).

21.  Do statement must have while
Pernyataan do harus memiliki while.

22.  Do-while statement missing(
Sesudah while pada pernyataan do,harus diberi tanda kurung buka.

23.  Do-while statement missing )
Ungkapan kondisi dalam do-while harus di akhiri dengan ).

24.  Do-while statement missing ;
Kurang tanda ; pada pernyataan do-while.

25.  Daplikate case
Setiap case pada pernyataan switch,haru memiliki nilai ungkapan konstanta yang unik (tidak sama dangan yang lain).

26.  Enum syntax error
Kesalahan pada pendeklarasian enum.

27.  Enumaration constant syntax error
Pernyataan yang di berikan sebagai nilai enum,harus berupa konstanta.

28.  Error writing output file
Pesan kesalahan ini akan tampil jika disket penuh atau rusak pada saat ada penulisan ke file.

29.  Expression syntax
Kesalahan ini biasanya di sebabkan adanya dua operator yang berurutan,penampilan tanda kurung yang kurang tepat,atau kurang tanda titik.

30.  File name too long
Nama file pada pengarah # include terlalu panjang,maksimal untuk do,hanya di ijinkan sampai 64 karakter.


31.  If statement missing )
Kurung tanda ( sesudah ungkapan kondisi yag mengikuti kata-kata if.


32.  Illegal character ‘c’ ( oxxx )
Ada karakter yang tidak absah,nilai decimal karakter tersebut di tampilkan keluar.

33.  Illegal in halisation
Ada inisialisasi  harus di berikan suatu konstanta,atau alamat variable extern di tambah atau di kurangi suata konstanta.

34.  Illegal octal digit
Ada konstanta octal yang mengandung digit lebih besar dari 7.

35.  Illegal pointen subtraction
Kesalahan ini biasa timbul jika ada pengurangan suatu pointer dengan non pointer.

36.  Illegal struction operational
Struktur tidak bole di gunakan untuk operator-operator selain titik,alamat dan (&),atau di lewatkan sebagai parameter fungsi.

37.  Illegal use of pointer
Pointer hanya boleh digunakan untuk  menjumlah,pengurangan,perbandingan,operator tak langsung (*) atau (=>)

38.  Improper use of a type dof symbol
Penggunaan symbol type dof tidak tepat

39.  Incorrect number format
Ada tanda pecahanpada bilangan heksa decimal

40.  Incompatible stronge class
Kesalahan timbul karna pemakaian extorn pada pendefinisian fungsi.hanya static (hanya tanpa class penyimpanan sama sekali) yang di isinkan.

41.  Incompatible type conversion
Tipe-tipe yang hendak di konfersikan ,tidak cocok.misalnya konversi suatu fungsi ke non fungsi,nilai pecahan ke type pointer.

42.  Incorrect use of default
Kata kuncu default harus di ikuti ole tanda titik koma

43.  Inisialiser syntax error.
Kaidah penganalisasi tidak benar.penyebabnya bisa berupa kekurangan atau kebanyakan operator atau salah tanda kurung.

44.  Invalid indirection
Operator tak langsung (*) memerlukan operand berupa pointer non-void.

45.  Invalid macro argument
Argument pada makro harus di pisahkan dengan karakter koma.

46.  Invalid pointer addition
Operasi penambahan terhadap dua buah pointer tak di perkenankan.

47.  Invalid use of arrow
Tanda -> harus di ikuti dengan nama pengenal (identifier).

48.  Lvalue required
Yang terletak di sebelah kiri operator (=) haruslah berupa ungkapan yang memiliki alamat.

49.  Macro argument syntax error
Argument dalam pendefinisian makro harus berupa identifier.

50.  Misplaced break
Ada prnyataan break yang letaknya tidak benar.




---------------------------------------------------------------------------------------------

beberapa syntax error pada C++


1. "expected constructor, destructor, or type conversion before ‘namespace’"


ini terjdi karena kita menggunakan kata "use" yang seharusnya "using"


contoh : 

Salah
#include <iostream>   
 use namespace std;   // "using" is correct, not "use"
 int main(void) 
 {
   cout << "A";
   return 0;
 }

Benar 
#include <iostream>   
 using namespace std;   // that's better!
 int main(void) 
 {
   cout << "A";
   return 0;
 } 



2. "expected initializer before numeric constant"


kita lupa untuk meletakkan tanda "=" sebelum angka

salah 
void foo()
 {
   int i 2;        // no =!
 }

Benar 
 void foo()
 {
   int i = 2;        // ahhh, better!
 }



3. "expected initializer before ‘x’"

 kita lupa meletakkan tanda "=" sebelum x

salah
 void foo()
 {
   int x = 2;
   int y x;           // should be an equals sign
 }

benar
 void foo()
 {
   int x = 2;
   int y = x;           // ahhh, better!
 }

4. " expected primary-expression before ‘=’ token"


terjadi jika kita meletakkan tanda "=" pada #define

salah 
 #define PI = 3.1425926  // = is incorrect
void foo()
 {
   int i = PI;
 }

benar 
 #define PI 3.1425926   // ahhh, better!
  void foo()
 {
   int i = PI;
 }



5. "expected unqualified-id before ‘)’ token"


terjadi ketika kita meletakkan tanda kurung "()"

salah
 class Foo()  // extraneous ()
 {
   // stuff
 }

benar 
 class Foo   // no ()
 {
   // stuff
 } 

atau bisa terjadi ketika kita meletakkan tanda ; pada akhir sebuah define

salah 
 #define STUFF 1.0;
 MyClass() : myVar(STUFF)  //STUFF puts extraneous ; in

benar
 #define STUFF 1.0

6.  expected identifier before ‘&’ token


kita meletakkan tanda & di tempat yang salah

salah 
 void foo(&int bar)  // ampersand goes before bar
 {
   // stuff 
 }

benar
 void foo(int &bar)   // the ampersand is in the right place now
 {
   // stuff 
 }



7.  expected `)' before ‘tile’

salah 
class Blort {
   Blort(Foo);
 };
 #include "blort.h"
 Blort::Blort(Foo aFoo) {   // Foo not defined
   // stuff
 } 

benar 
 class Foo {
   // stuff
 } 
#include "foo.h"   // now Foo is defined
 Class Blort {
   Blort(Foo);
 }; 
  #include "blort.h"
 Blort::Blort(Foo aFoo) {
   // stuff
 }

8. expected ‘;’ before ‘}’ token


kita lupa meletakkan tanda semicolon ";" pada satu block code

salah 
class Foo
 {
   int i;
   int j    // no semicolon
 };

benar
 class Foo
 {
   int i;
   int j;   // semicolon
 };



9.  expected `;' before numeric constant
- kita lupa meletakkan tanda "<<" pada bagian printing

salah 
 #include <iostream>
 using namespace std;
 int printTwo()
 {
   cout << "there are " 2 << " apples" << endl;  // missing "<<"
 }

benar
 #include <iostream>
 using namespace std;
 int printTwo() 
 {
   cout << "there are " << 2 << " apples" << endl;  // better!
 }

- atau bisa terjadi jika kita lupa meletakkan tanda "()" pada exit statement

salah
int main(void)
 {
   exit 3;  // wrong
 }

benar
int main(void)
 {
   exit(3);  // right
 }

atau bisa terjadi jika kita mendefenisikan sebuah isi untik sebuah varibel dan kita menggunakan variabel yang sama pada fungsi defenisi

salah 
#define N 10
 ...
 main(){
 ...
 theFunction(N);  //function call
 ...
 }
 void theFunction(int N) //wrong!!! N is replace by 10 in pre processing
 {}

benar
 #define N 10
 ...
 main(){
 ...
 theFunction(N);  //function call
 ...
 }
 void theFunction(int n) //right !!! change from N to n different variable
 {}



10. expected `;' before string constant


lupa meletakkan tanda "<<" pada bagian akhir printing

salah 
 #include <iostream>
 using namespace std;
 int foo(int count) 
 {
   cout << "there are " << count " apples" << endl;  // missing "<<"
 }

benar
 #include <iostream>
 using namespace std;
 int foo(int count) 
 {
   cout << "there are " << count << " apples" << endl;  // ahhh, better!
 }



11. expected `:' before ‘int’


kita lupa meletakkan tanda ":" setelah privacy indicator pada bagian class declaration

salah 
class Foo
{
  public int getOne()  // missing :
  {
    return 1;
  }
  public int getTwo()  // don't need to repeat
  {
    return 1 + getOne();
  }
};

benar
class Foo
{
public:             // say "public" once here
  int getOne()  
  {
    return 1;
  }
  int getTwo()  
  {
    return 1 + getOne();
  }
};
  


12. expected initializer before ‘Foo’

salah 
#include "Foo.h"
 class Bar extends Foo
 {
   // stuff  
 }; 

benar
#include "Foo.h"
 class Bar: public Foo
 {
   // stuff  
 };



13. expected class-name before ‘{’ token

salah
 class Foo: public Bar   // Foo is a subclass of Bar
 {
   // stuff
 };

benar
 #include "Bar.h"         // this makes Bar recognized
 class Foo: public Bar   
 {
   // stuff
 };



14. undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_ 

 salah
Makefile: 
foo: foo.o
    cc testLatLngToPixel.o -o testLatLngToPixel      # cc doesn't work for some reason
 (blank line)       
 .cc.o:
    g++ -v -g -c $< 
foo.cc:
 #include <iostream>
  #include <string>
  using namespace std;
  int main ()
  {
    string bar;
  }

benar
Makefile: 
foo: foo.o
   g++ testLatLngToPixel.o -o testLatLngToPixel         # g++
 (blank line)       
 .cc.o:
   g++ -v -g -c $< 
foo.cc: 
 #include <iostream>
  #include <string>
  using namespace std;
  int main ()
  {
    string bar;
  } 


courtesy:
http://rioalvin.blogspot.com/2012/03/mengenal-parsing-error-pada-c.html
http://omophorest.blogspot.com/2012/04/pesan-error-di-pascal-dan-c.html