Jump to content
Sign in to follow this  
Superior

Pasal C++. Konfius Sikit

Recommended Posts

#include<iostream.h>

void main ()

{ char gred;

return;

}

Nak tanya ni, yg char tu leh tak sebelum void main()

Satu lagi, ape maksud return tu ye? kalau tak letak return boleh ke?

Ini bukan soalan assignment, jadi tolong la jawab. Saya tau, kalau soalan asssignment, korang takkan tolong. Aku perhati je sikap orang2 kat sini. Terima kasih.

Share this post


Link to post
Share on other sites

aku jawab soalan awak dari pandangan C..

jawapan betul utk C++ aku tak tahu..nanti org lain plak jawab

kalau dalam C, char gred tu boleh diletakkan sebelum main()

tapi kalau buat gitu, nanti ada maksud lain.. dia akan jadi global variable

dimana setiap function akan mendapat access utk variable tu

kalau awak tak tahu apa maksud return..aku anggap nkoo tak belajar pasal function lagi

sebab function boleh return value..

dalam algebra, f(x)=2x+x dimana nilai f(x) ialah return value

code awak di atas adalah salah sebab awak dah declare function main tak akan return value..

jadi awak takleh return..memang takleh compile nyee

#include<iostream.h>

void main ()
{ char gred;

}
#include<iostream.h>

int main ()
{ char gred;

return 0;
}

All the variables that we are going to use must have been previously declared. An important difference between the C and C++ languages, is that in C++ we can declare variables anywhere in the source code, even between two executable sentences, and not only at the beginning of a block of instructions, like happens in C.

http://www.cplusplus.com/doc/tutorial/tut1-2.html

Share this post


Link to post
Share on other sites

mmm.. basically, zeph mmg betul....

pasal delare gred tu, kalu ko declare dalam function (dlm kes ni function main ) maka hanya function tu je yg leh capai nilai dia....

pasal return ... dia akan pulangkan nilai bg function tu.....dalam kes ko, dia akan return nilai berjenis int sbb ko dah define masa kat kepala function tu.... int main () ...kalo takde nilai yg nak dipulangkan, ko guna void je.... void main ()

wallahua'lam

Share this post


Link to post
Share on other sites

Terima kasih kpd saudara berdua.

Sebenarnya saya baru je belajar ni. Saya baru tahun 1. Baru belajar basic.

Share this post


Link to post
Share on other sites

kalau ikut standard ANSI C main() mesti return int.. nilai return dari main mungkin/akan digunakan oleh OS (yg ni tak pasti mcm mana)..

jadi elok conform to standard, walaupun compiler anda membenarkan void main()..

Share this post


Link to post
Share on other sites

ilmu baru utk aku....thanks a lot...

*akubest ... ko pon nak kawen gak? lor... tiru aku la tuh... muahahahhaha

uiii... bestnye kome kawinnn.. aku ni awek pun takde sad.gif

pasal soalan tu, aku suka bayangkan camni, int main bermakna main akan kembalikan nilai int kepada sistem, tapi kalo kita takde nak pulangkan ape nilai pada sistem, kita kasitau la kat sistem tu yang kita tak mo pulangkan ape ape dgn menggunakan return 0. 0 kat sini bermakna false. kiranye tak elok la kita biarkan orang lain mengharap dan menanti benda yang takkan sampai. hehehhe tongue.gif betul ke ape yang aku ngarut tu ? kalo salah tolong betulkan ekk smile.gif

Share this post


Link to post
Share on other sites

pasal soalan tu, aku suka bayangkan camni, int main bermakna main akan kembalikan nilai int kepada sistem, tapi kalo kita takde nak pulangkan ape nilai pada sistem, kita kasitau la kat sistem tu yang kita tak mo pulangkan ape ape dgn menggunakan return 0. 0 kat sini bermakna false. kiranye tak elok la kita biarkan orang lain mengharap dan menanti benda yang takkan sampai. hehehhe  tongue.gif  betul ke ape yang aku ngarut tu ? kalo salah tolong betulkan ekk  smile.gif

0 is still a return value of type int. Dalam C/C++, biler kiter taknak return aper2 value from a function, use void as return type. This way, you don't need to put return statement in your function. Biler kiter guna return type selain dari void, you must use return statement dan nilai yang dipulangkan mestilah sesuai dengan return type. At the lower level, every function akan pulangkan nilai, tak kira samada function awak guna return type void atau tidak, sebabnya, at assembly level, every function will be called using the call instruction, dan fungsi akan keluar dengan ret instruction. Sekembalinya dari fungsi ni, register eax (usually) will be use to hold the return value. Terpulang kepada anda samada nak set atau tidak.

Share this post


Link to post
Share on other sites

hai...nak tanya pasal c++ nie..ada tak sesaper tau pasal info dalam internet kat maner yg senang faham notanya..sebab aku nak buat rujukan.thanks..

Share this post


Link to post
Share on other sites

cuba try yang ni.

kalo tak best gak kena google la biggrin.gif

Share this post


Link to post
Share on other sites

yups, setuju sangat dgn cik ancient one..

terpulang nak wat camner pun.. nak ada pulangan nilai

kepada o/s atau tidak.. walaupun bukan kiter2 nak guna..

tapi amalkan la.. return (int) tu yek~

mana tahu nanti benda ni will be handy for u future.

semernya adalah kerana c/c++, bahasa itu sendiri..

Edited by fatah

Share this post


Link to post
Share on other sites

sorry arr..aku nak tanya camana kita nak detect yg program c++ dalam machine nie ader masalah..maksud aku nak tgk relay kat machine yg berkaitan dgn program ker?aku tak beraper faham..

mekasih year..

Share this post


Link to post
Share on other sites

#include<iostream.h>

void main ()

{  char gred;

return;

}

Nak tanya ni, yg char tu leh tak sebelum void main()

Satu lagi, ape maksud return tu ye? kalau tak letak return boleh ke?

Pasal so'alan last tu, boleh kalo x ada return cam zeph punya coding;

#include<iostream.h>

void main ()
{ char gred;

}
Tapi, kalo nak kembalikan nilai (value return) tengok pada jenis main; int main() akan return int juga macam zeph punya coding jugak bawah
#include<iostream.h>

int main ()
{ char gred;

return 0;
}

Kalo main() berjenis char, returnnya pun char, sepertimana jenis-jenis pembolehubah macam double,float dan sebagainya... Tapi utk kemudahan beginners, biasanya void main() adalah lebih fancy sbb x perlu letak return sebelum penutup aturcara itu (}). (Ada orang cakap senang pakai int main(); saya x kata salah, 'it's up to any programmers')

P/S:Panjang ke? Aisye, sorilah, tapi utk bantuan juga.... jap, ada lagi post aku kat bawah!!

Share this post


Link to post
Share on other sites

Berkenaan soalan pertama, anda boleh 'declare' char sebelum main() (menjadi global declaration) macam coding dibawah:

#include<iostream.h>

char gred;

void main ()
{

}
Tapi, jgn sangka 'effect'nya sama macam 'local declaration' macam coding² zeph sebelum nih, walaupun fungsi berjenis void. Cuba kompil aturcara saya di bawah ini:
#include <iostream.h>
#include <conio.h>

int i=2;

void tukar()
{ i=3;
}

void main()
{ cout<<"Nombor :"<<i<<endl;
   tukar();
   cout<<"Nombor :"<<i<<endl;
   getch();
}

Kedua-dua fungsi itu menggunakan pembolehubah i sebagai pembolehubah integer (int) dengan nilai awalan 2, tetapi apabila fungsi void tukar() di'panggil', nilai i akan berubah daripada nilai 2 kepada 3(kamu akan belajar Panggilan Fungsi daripada pensyarah/pengajar korang nanti). Cuba & 'trace', kalo nak tau lebih detail!!

P/S:OK, lega, dah habis, bolehlah aku masuk kelas aku lepas nih laugh.gif

Share this post


Link to post
Share on other sites

return value from main biasanya digunakan untuk setkan exit code untuk suatu program.. so, biler proses lain nak check status program tu maser exit, dia bleh query exit code nih ngan system. useful kalau kiter nak tengok samada dia exit normally atau tidak. tu pun kalau program tuh setkan laa...

mfar..aper yang ko cuba nak tunjukkan nih? bleh jelaskan?

Share this post


Link to post
Share on other sites

mfar..aper yang ko cuba nak tunjukkan nih? bleh jelaskan?

I have no idea that you cannot get a sense what i had tried to explain to Superior about 1) jenis pulangan depends on main() function type and 2)variable declaration and its effect ..... tiba-tiba kau bertanyakan pulak soalan macam tu, seolah-olah ada yg tak kena pada mesej aku dlm 2 post sebelum kau (tengok post pun mcmlah aku nih expert sangat tongue.gif) !! OK, bleh bagi quote mana kau rasa ada yg x kena?

Edited by mfar

Share this post


Link to post
Share on other sites

Berkenaan soalan pertama, anda boleh 'declare' char sebelum main() (menjadi global declaration) macam coding dibawah:

#include<iostream.h>

char gred;

void main ()
{

}
Tapi, jgn sangka 'effect'nya sama macam 'local declaration' macam coding² zeph sebelum nih, walaupun fungsi berjenis void. Cuba kompil aturcara saya di bawah ini:
#include <iostream.h>
#include <conio.h>

int i=2;

void tukar()
{ i=3;
}

void main()
{ cout<<"Nombor :"<<i<<endl;
   tukar();
   cout<<"Nombor :"<<i<<endl;
   getch();
}

Kedua-dua fungsi itu menggunakan pembolehubah i sebagai pembolehubah integer (int) dengan nilai awalan 2, tetapi apabila fungsi void tukar() di'panggil', nilai i akan berubah daripada nilai 2 kepada 3(kamu akan belajar Panggilan Fungsi daripada pensyarah/pengajar korang nanti). Cuba & 'trace', kalo nak tau lebih detail!!

Share this post


Link to post
Share on other sites

Kalo u refer balik pada post u sendiri pasal return value from main(), u kena tengok juga return type bagi fungsi main itu sendiri!! Macam u cakap ada exit code untuk fungsi, tidak semestinya nilai return value ada kosong; 0000000000000000 (0 X 10 kuasa 16), macam return 0 dalam int main()... itupun tengok pada jenis fungsi yang mahu memulangkan nilai!!

OK, cool? Itu saja!!

Share this post


Link to post
Share on other sites

Kedua-dua fungsi itu menggunakan pembolehubah i sebagai pembolehubah integer (int) dengan nilai awalan 2, tetapi apabila fungsi void tukar() di'panggil', nilai i akan berubah daripada nilai 2 kepada 3

aku rasa Ancient One nak tanya "apa kaitan return value void tu dgn variable scope local/global"? betul ke Ancient One? smile.gif

Share this post


Link to post
Share on other sites

..exit code untuk fungsi...

aku cakap exit code untuk program

aku rasa Ancient One nak tanya "apa kaitan return value void tu dgn variable scope local/global"? betul ke Ancient One?

lebih kurang la kot.. actually aku sendiri tak reti nak construct ayat soal yang khusus, tu sebab aku mintak jelaskan semer sekali...

ader lagi aku tak paham

Macam u cakap ada exit code untuk fungsi, tidak semestinya nilai return value ada kosong; 0000000000000000 (0 X 10 kuasa 16), macam return 0 dalam int main()... itupun tengok pada jenis fungsi yang mahu memulangkan nilai!!

Share this post


Link to post
Share on other sites

Sebenarnya, aku malas nak bg penjelasan sbb Quote yang Ancient One tunjukkan tu tak berapa spesifik (aku dah agak reaksi dia kalo threadnya x terjawab)... lainlah kalo aku pelajar Sastera Iktisas.. bolehlah jalankan proses menghalusi pertanyaan kau tu!! ph34r.gif

aku rasa Ancient One nak tanya "apa kaitan return value void tu dgn variable scope local/global"? betul ke Ancient One? 

Pasal soalan ini, value void yg aku tunjukkan sebelum ini lebih kurang macam proses di mana int tukar() memulangkan nilai i untuk diumpukkan ke dalam 'variable' i dlm fungsi main() yg memanggil fungsi tersebut (Kedua-dua fungsi itu menggunakan pembolehubah i sebagai local, bukan global macam ala perkongsian pembolehubah)

#include <iostream.h>
#include <conio.h>

int tukar()
{ 
   int i=3;
   return i
}

void main()
{
   int i=0;
....
  i=tukar();
....
  getch();
}

Tapi dlm kes nih, boleh kata ada solution untuk pendekkan bilangan baris aturcara dengan penggunaan void (uih, betul sangat ke aku nih unsure.gif)

Macam u cakap ada exit code untuk fungsi, tidak semestinya nilai return value ada kosong; 0000000000000000 (0 X 10 kuasa 16), macam return 0 dalam int main()... itupun tengok pada jenis fungsi yang mahu memulangkan nilai!!
Silap taip daa, 0 X 10 kuasa 16 tu sepatutnya aku taip mcm nih => 0 heksadesimal (input bahasa mesin dlm range 0000000000000000 ~ FFFFFFFFFFFFFFFF).... tapi aku x berapa teliti sangat pasal cammana kompiler laksanakan arahan value fungsi sbb setau aku, jenis fungsi yg diisytiharkan mempunyai code tertentu yg diterjemah daripada pengkompil utk 'terminate' menggunakan penghimpun (pengkompil bahasa aras rendah) !!!

P/S: Susah jugak jadik penerang yg terbaik; makin ringkas penerangan, makin mudah!

Share this post


Link to post
Share on other sites

aku raser aku dah faham dah.. biler aku tengok keyword perkongsian, so abaikan jer la soalan aku.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×
×
  • Create New...