Karena "D0D98021" dan "Arista" merupakan literal
string yang memiliki length yang constant maka
statement untuk mengassigment value nya tidak bisa
kalau mau mengassignment dengan cara seperti itu harus
memakai Pointer. 


* Dengan Array 
struct SISWA {
char NIS[9]; 
char Nama[20];
JENIS_KELAMIN gender;
}A;

strcpy(&A.NIS[0],"D0D98021");
strcpy(&A.Nama[0],"Arista");
A.gender = Wanita;


- Dengan Ponter 

struct SISWA {
* char NIS; 
char Nama[20];
JENIS_KELAMIN gender;
}A;

strcpy(&A.NIS[0],"D0D98021");
strcpy(&A.Nama[0],"Arista");
A.gender = Wanita;


Informasi Tambahan :
Untuk menampung nilai "D0D98021" (Length 8) dengan
char NIS[8] tidak tepat karena untuk membuat tempat
penyimpanan untuk sebuah string haruslah 
Length Array = Length Karekter + 1. Kenapa harus
ditambah 1 karena itu untuk menampung karakter
terakhir '\0'.
Array Index selalu dimulai dari 0
char NIS[9]; 
NIS [0]='D'
NIS [1]='0'
NIS [2]='D'
NIS [3]='9'
NIS [4]='8'
NIS [5]='0'
NIS [6]='2'
NIS [7]='1'
NIS [8]='\0'





struct SISWA {
char NIS[9]; 
char Nama[20];
JENIS_KELAMIN gender;
}A;

strcpy(&A.NIS[0],"D0D98021");
strcpy(&A.Nama[0],"Arista");
A.gender = Wanita;



--- Yanu Widodo <[EMAIL PROTECTED]> wrote:

> Assalamualaikum
> apa khabar men-teman ?
> 
> gini nih, saya lagi belajar c++
> waktu saya coba ngompile source code berikut : 
> 
>       1 #include <iostream>
>       2
>       3 using namespace std;
>       4
>       5 enum JENIS_KELAMIN { Pria, Wanita };
>       6 int main() {
>       7
>       8   struct SISWA {
>       9     char NIS[8];
>      10     char Nama[20];
>      11     JENIS_KELAMIN gender;
>      12   } A;
>      13
>      14   A.NIS = "D0D98021";
>      15   A.Nama = "Arista";
>      16   A.gender = Wanita;
>      17
>      18   cout<<"NIS    : "<<A.NIS<<endl;
>      19   cout<<"Nama   : "<<A.Nama<<endl;
>      20   cout<<"Gender : "<<A.gender<<endl;
>      21
>      22   return 0;
>      23 }
> 
> 
> kok ada error spt berikut yak?
> 
> # g++ test.cpp -o test
> test.cpp: In function `int main()':
> test.cpp:14: incompatible types in assignment of
> `const char[9]' to `char[8]'
> test.cpp:15: incompatible types in assignment of
> `const char[7]' to `char[20]'
> 
> 
> saya ngompile make 
> 
>  # g++ --version
> g++ (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
> Copyright (C) 2002 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.
> 
> 
> padahal syntaxnya udah sesuai referensi
> mohon pencerahan.
> 
> 
> 
> salam,
> 
> yanu
> 
> -- 
> Berhenti langganan:
> [EMAIL PROTECTED]
> Arsip dan info: http://linux.or.id/milis
> 
> 


Send instant messages to your online friends http://uk.messenger.yahoo.com 

-- 
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis

Kirim email ke