Re: [programming] call by reference di c for linux

2000-10-27 Terurut Topik Danny Setiawan
> Saran: > Buku The C Programming Language 2nd Ed Kernighan & Ritchie menjelaskan > hal2 seperti ini dengan sangat detil. > Tambahan, The C Programming Language FAQ juga berisi informasi menarik > seperti ini (coba cari di www.faqs.org). Mas Yohanes, kira-kira ada/tahu nggak site yang menyediakan

Re: [programming] call by reference di c for linux

2000-10-25 Terurut Topik Oki DZ
On Mon, 23 Oct 2000, Yohanes Nugroho wrote: > > Saya coba programnya dengan alokasi string yang statik itu; segfault tuh. > > apa yang Anda lakukan sehinngga bisa segfault > dari the C programming language FAQ > > (sorry agak panjang, tapi diharapkan semua jadi mengerti) > > --- > 1.32: W

Re: [programming] call by reference di c for linux

2000-10-24 Terurut Topik Agus Budy Wuysang
Yohanes Nugroho wrote: > setahu saya untuk inisialisasi > jika ada > char coba[] = "teststring" > lalu > cahr coba2[] = "teststring" > maka alamat yang dipoint oleh coba dan coba2 berbeda Pasti beda karena ini bukan address assignment, tapi "mencopy" size & value dari string constant. > tapi jik

Re: [programming] call by reference di c for linux

2000-10-23 Terurut Topik Yohanes Nugroho
On Mon, 23 Oct 2000, Benny Prijono wrote: > > char *coba3 = "teststring" > > lalu > > char *coba4 = "teststring" > > alamat yang ditunjuk coba3 dan coba4 sama (sudah ditest di gcc). > > > Optimisasi di atas biasanya disebut 'string pooling', jadi kalau ada > dua atau lebih string constant, const

Re: [programming] call by reference di c for linux

2000-10-23 Terurut Topik Benny Prijono
Yohanes Nugroho wrote: > tapi jika > char *coba3 = "teststring" > lalu > char *coba4 = "teststring" > alamat yang ditunjuk coba3 dan coba4 sama (sudah ditest di gcc). > Optimisasi di atas biasanya disebut 'string pooling', jadi kalau ada dua atau lebih string constant, constants itu akan ditaruh

Re: [programming] call by reference di c for linux

2000-10-22 Terurut Topik Yohanes Nugroho
On Mon, 23 Oct 2000, Oki DZ wrote: > Apa betul nih? > Seumpamanya pada program yang lalu itu saya punya > char *coba; > coba = malloc(sizeof(char) * 11); > coba = NULL; > tahu darimana library C-nya bahwa ada bagian memori yang perlu di-free() > saat exit, toh referensi ke memori yang hasil mallo

Re: [programming] call by reference di c for linux

2000-10-22 Terurut Topik Ikhlasul Amal
On Mon, Oct 23, 2000 at 07:14:46AM +0700, Oki DZ wrote (probably edited): % Apa betul nih? % Seumpamanya pada program yang lalu itu saya punya % char *coba; % coba = malloc(sizeof(char) * 11); % coba = NULL; % tahu darimana library C-nya bahwa ada bagian memori yang perlu % di-free() saat exit, to

Re: [programming] call by reference di c for linux

2000-10-22 Terurut Topik Oki DZ
On Thu, 19 Oct 2000, Yohanes Nugroho wrote: > nggak, malloc dan pasangannya free ditangani oleh library C, bukan oleh > sistem operasi. Ketika exit otomatis librarynya melakukan clean up > (andaikan tidak diclean up, memori untuk suatu proses di destroy ketika > prosesnya exit). Apa betul nih? Se

Re: [programming] call by reference di c for linux

2000-10-20 Terurut Topik Steven Haryanto
At 18:45 20/10/2000, you wrote: >Ini benar. Hati2 juga pada waktu membuat program yg digunakan sbg plug-ins >pada daemon / long running program. Misalkan driver database, atau >modul-modul Apache. Makanya enak bikin modul Apache pake Perl (mod_perl), >karena Perl punya garbage

Re: [programming] call by reference di c for linux

2000-10-20 Terurut Topik Ronny Haryanto
On 20-Oct-2000, Edwin Pratomo wrote: > Alokasi memori dinamik menggunakan malloc() dan keluarganya > dilakukan di heap, bukan stack. Ah iya, dodol.. hehe.. dari dulu kebalik melulu saya. Thanks koreksinya :) Ronny

Re: [programming] call by reference di c for linux

2000-10-20 Terurut Topik Edwin Pratomo
--- Ronny Haryanto <[EMAIL PROTECTED]> > wrote: >On 19-Oct-2000, Andy wrote: >> apa efeknya kalo sering menjalankan program yang melakukan malloc > >Waktu programnya dijalankan kan kernel sudah allocate space di memory >utk program tsb, termasuk stack utk dynamic memorynya. Alokasi mem

Re: [programming] call by reference di c for linux

2000-10-19 Terurut Topik Agus Budy Wuysang
Yohanes Nugroho wrote: > > On Thu, 19 Oct 2000, Agus Budy Wuysang wrote: > > > > artinya compiler akan menyediakan suatu tempat dimemori (dan tidak ada > >^ > > > jaminan bahwa lokasinya dapat ditulisi) yang berisi string te

Re: [programming] call by reference di c for linux

2000-10-19 Terurut Topik Agus Budy Wuysang
Benny Prijono wrote: > > Agus Budy Wuysang wrote: > > > > si andy tidak memakai konstruk "coba++" jadi kalam konteksnya > > tak ada beda... note: local char pointer ie. &strz != &coba > > > > while (++*strz) stop saat *strz = '\0' (strlen(strz) = 9) i=0...8 > > padahal xorz = char[8] -> (i=0...7)

Re: [programming] call by reference di c for linux

2000-10-19 Terurut Topik Yohanes Nugroho
On Thu, 19 Oct 2000, Agus Budy Wuysang wrote: > > artinya compiler akan menyediakan suatu tempat dimemori (dan tidak ada >^ > > jaminan bahwa lokasinya dapat ditulisi) yang berisi string tersebut, lalu > ^^^

Re: [programming] call by reference di c for linux

2000-10-19 Terurut Topik Agus Budy Wuysang
Yohanes Nugroho wrote: > > On Thu, 19 Oct 2000, Andy wrote: > > > char * ptrString; > > > > ptrString="1234567890"; > > puts (ptrString); > > > > apakah berbahaya bagi sistem operasi, karena ptrString tidak di alokasi > > dulu memory-nya > > dengan malloc? > > nggak apa-apa, asal isi ptrString

Re: [programming] call by reference di c for linux

2000-10-19 Terurut Topik Agus Budy Wuysang
Andy wrote: > > On Thu, Oct 19, 2000 at 11:08:22AM +0700, Agus Budy Wuysang wrote: > > > > si andy tidak memakai konstruk "coba++" jadi kalam konteksnya > > tak ada beda... note: local char pointer ie. &strz != &coba > > > > while (++*strz) stop saat *strz = '\0' (strlen(strz) = 9) i=0...8 >

Re: [programming] call by reference di c for linux

2000-10-19 Terurut Topik Benny Prijono
Agus Budy Wuysang wrote: > > si andy tidak memakai konstruk "coba++" jadi kalam konteksnya > tak ada beda... note: local char pointer ie. &strz != &coba > > while (++*strz) stop saat *strz = '\0' (strlen(strz) = 9) i=0...8 > padahal xorz = char[8] -> (i=0...7) = overflow > terus terang kalimat

Re: [programming] call by reference di c for linux

2000-10-19 Terurut Topik Yohanes Nugroho
On Thu, 19 Oct 2000, Andy wrote: > char * ptrString; > > ptrString="1234567890"; > puts (ptrString); > > apakah berbahaya bagi sistem operasi, karena ptrString tidak di alokasi > dulu memory-nya > dengan malloc? nggak apa-apa, asal isi ptrString jangan diutak-atik. ptrString=".."; artiny

Re: [programming] call by reference di c for linux

2000-10-19 Terurut Topik Yohanes Nugroho
On Thu, 19 Oct 2000, Andy wrote: > itu kalo gak di free, apakah otomatis memori yang ter-malloc tadi di > kembalikan ke os ? ya, ketika programnya exit > apa efeknya kalo sering menjalankan program yang melakukan malloc trus > gak pernah free? kalo programnya malloc terus, nggak difree, dan

Re: [programming] call by reference di c for linux

2000-10-18 Terurut Topik Ronny Haryanto
On 19-Oct-2000, Andy wrote: > apa efeknya kalo sering menjalankan program yang melakukan malloc > trus gak pernah free? berbahayakah bagi OS sendiri (linux/freebsd)? Waktu programnya dijalankan kan kernel sudah allocate space di memory utk program tsb, termasuk stack utk dynamic memorynya. Penge

Re: [programming] call by reference di c for linux

2000-10-18 Terurut Topik Andy
On Thu, Oct 19, 2000 at 11:30:10AM +0700, Yohanes Nugroho wrote: > On Thu, 19 Oct 2000, Oki DZ wrote: > > > Programnya diganti dikit, biar ngeliatnya gampang. :P > free(coba); > } itu kalo gak di free, apakah otomatis memori yang ter-malloc tadi di kembalikan ke os ? apa efeknya kalo serin

Re: [programming] call by reference di c for linux

2000-10-18 Terurut Topik Andy
On Thu, Oct 19, 2000 at 11:08:22AM +0700, Agus Budy Wuysang wrote: > > si andy tidak memakai konstruk "coba++" jadi kalam konteksnya > tak ada beda... note: local char pointer ie. &strz != &coba > > while (++*strz) stop saat *strz = '\0' (strlen(strz) = 9) i=0...8 ^-> weh bisa gini t

Re: [programming] call by reference di c for linux

2000-10-18 Terurut Topik Yohanes Nugroho
On Thu, 19 Oct 2000, Oki DZ wrote: > Programnya diganti dikit, biar ngeliatnya gampang. > void callbyreference(char **p) { [.] > } [.] > callbyreference(&coba); [.] > puts(coba); tapi mestinya nggak perlu mem-pass alamat dari coba ke fungsi callbyreference(), begini cukup: #in

Re: [programming] call by reference di c for linux

2000-10-18 Terurut Topik Agus Budy Wuysang
Benny Prijono wrote: > > Yohanes Nugroho wrote: > > > > On Wed, 18 Oct 2000, Andy wrote: > > > > > yah betul mas, saya coba ubah & ke * langsung jalan tapi akibatnya > > > segmentation fault > > > > > > char * coba = "teststring"; > > ganti baris di atas dg > > > > char coba[] = "teststring";

Re: [programming] call by reference di c for linux

2000-10-18 Terurut Topik Oki DZ
On Wed, 18 Oct 2000, Andy wrote: > dear all, > saya mengalami kesulitan dalam menggunakan call by refeence di c-nya linux :) > berikut contoh snippet kode > > #include > #include > > int xorz[9]={34,56,22,41,23,54,12,64,23}; > > void callbyreference2(char & p) > { > char * strz; > int i; > i

RE: [programming] call by reference di c for linux

2000-10-18 Terurut Topik Sumantri Adiaksana
, October 17, 2000 6:32 PM To: [EMAIL PROTECTED] Subject: RE: [programming] call by reference di c for linux > -Original Message- > From: Andy [mailto:[EMAIL PROTECTED]] > Sent: Rabu, 18 Oktober 2000 12:03 Comm > To: [EMAIL PROTECTED] > Subject: [programming] call by reference

Re: [programming] call by reference di c for linux

2000-10-18 Terurut Topik Benny Prijono
Yohanes Nugroho wrote: > > On Wed, 18 Oct 2000, Andy wrote: > > > yah betul mas, saya coba ubah & ke * langsung jalan tapi akibatnya > > segmentation fault > > > > char * coba = "teststring"; > ganti baris di atas dg > > char coba[] = "teststring"; > tambahan: itu xorz[] kok besarnya cumak

RE: [programming] call by reference di c for linux

2000-10-17 Terurut Topik commedo
> -Original Message- > From: Andy [mailto:[EMAIL PROTECTED]] > Sent: Rabu, 18 Oktober 2000 12:03 Comm > To: [EMAIL PROTECTED] > Subject: [programming] call by reference di c for linux > > > dear all, > saya mengalami kesulitan dalam menggunakan call by

Re: [programming] call by reference di c for linux

2000-10-17 Terurut Topik mastri
On Wed, Oct 18, 2000 at 12:25:02PM +0700, Andy wrote: > trus tanpa pikir panjang saya adopt ke c dengan asumsi ah C++ aja bisa berarti c >juga bisa > donk :) OOT: asumsi yang kebalik kali itu Mas :-) tapi emang namanya C++ sih, kalau namanya ++C mungkin akanjarang orang yang salah kebalik asums

Re: [programming] call by reference di c for linux

2000-10-17 Terurut Topik Yohanes Nugroho
On Wed, 18 Oct 2000, Andy wrote: > yah betul mas, saya coba ubah & ke * langsung jalan tapi akibatnya > segmentation fault > > char * coba = "teststring"; ganti baris di atas dg char coba[] = "teststring"; -- Salam Yohanes SMS Mail : [EMAIL PROTECTED] http://langitbiru.hypermart.net ---

Re: [programming] call by reference di c for linux

2000-10-17 Terurut Topik Andy
On Wed, Oct 18, 2000 at 11:55:56AM +0700, mastri wrote: > > > void callbyreference2(char & p) > > ini bukannya jadi reference ke char, padahal yang dikirim string (char *). > dan AFAIK. reference gini khan (pake &) itu konsep C++. kalau konsep hauhuaahuahuahuahua buetul mass saya liat di htt

Re: [programming] call by reference di c for linux

2000-10-17 Terurut Topik mastri
On Wed, Oct 18, 2000 at 11:53:31AM +0700, Andy wrote: > dear all, > saya mengalami kesulitan dalam menggunakan call by refeence di c-nya linux :) > berikut contoh snippet kode > > #include > #include > > int xorz[9]={34,56,22,41,23,54,12,64,23}; > > void callbyreference2(char & p) ini bukan

[programming] call by reference di c for linux

2000-10-17 Terurut Topik Andy
dear all, saya mengalami kesulitan dalam menggunakan call by refeence di c-nya linux :) berikut contoh snippet kode #include #include int xorz[9]={34,56,22,41,23,54,12,64,23}; void callbyreference2(char & p) { char * strz; int i; i=0; strz=*p; while (*strz){ p[i] = (p[i] ^ (xorz[i]+i)); strz+