»
S
I
D
E
B
A
R
«
“કેમ છો?”ને સમજીએ
Oct 29th, 2009 by Chirag

“કેમ છો?”ને સમજીએ - ચીરાગ પટેલ     ઑક્ટોબર 09, 2009

બીજા પગલા તરીકે, ચાલો “કેમ છો?” પ્રૉગ્રામને સમજીએ. “કેમ છો?”ની દરેક લીટીને હું આજે ક્રમ આપીને સમજાવીશ.

સહુપ્રથમ મુળ સુચીને અગ્રક્રમાંક સાથે ફરીથી જુઓ.
1 - // my first ever “kem chho?” program in c++
2 - #include <iostream>
3 -
4 - int main( int argc, char* argv[] )
5 - {
6 -     std::cout << “kem chho?\n”;
7 -     return 0;
8 - }

હવે, ક્રમવાર દરેક લીટીને સમજીએ.

1 - // my first ever “kem chho?” program in c++
આ લીટીની શરુઆત “//”થી થાય છે. ત્યારબાદ નવી લીટી ના આવે ત્યાં સુધી લખેલાં શબ્દોને કૉમેન્ટ (comment) કહેવાય છે, જે આ પ્રૉગ્રામને વાંચનાર કે લખનારને સમજુતી આપવા માટે હોય છે.  આવી કૉમેન્ટનો પ્રૉગ્રામના પરીણામ(output)માં કોઈ ફાળો નથી હોતો. એક કરતાં વધુ લીટીની કૉમેન્ટ માટે શરુઆત “/*”થી કરવાની હોય છે. ત્યારબાદ જે શબ્દો લખાય એના અન્તે “*/” લખવાથી આખી કૉમેન્ટ પુરી થાય છે. જેમ કે,

/* This is a multi-line comment example.
Did you get the point now?
*/

આ જ કૉમેન્ટને પ્રથમ પ્રકારે લખવી હોય તો નીચે મુજબ લખી શકાય.

// This is a multi-line comment example.
// Did you get the point now?

એક પાયાનો તફાવત સમજાવુ. “//” પ્રકારની કૉમેન્ટની ડાબી બાજુ જે લખાય છે એનો પ્રૉગ્રામના પરીણામમાં ફાળો ગણાય છે. જ્યારે, “/*…*/” પ્રકારની કૉમેન્ટમાં માત્ર અને માત્ર “/* અને “*/” વચ્ચેના શબ્દો સીવાયના શબ્દોનો પરીણામમાં ફાળો હોય છે! જેમ જેમ આપણે મહાવરો કરતા જઈશું તેમ તેમ આ ભેદ વધુ સ્પષ્ટ થશે.

2 - #include <iostream>
આપણે ઈન્ગ્લીશનો કોઈ શબ્દ સમજવો હોય તો ઈન્ગ્લીશ કોશ જોવો પડે અને કોઈ સ્પેનીશ શબ્દ જાણવો હોય તો સ્પેનીશ કોશ જોવો પડે. એવી રીતે 6ઠ્ઠી લીટી પર જે લખ્યુ છે એને યોગ્ય રીતે સમજવા માટે આપણા પ્રૉગ્રામે 2જી લીટીમા લખેલી લાયબ્રેરી(library)નો સન્દર્ભ ટાંકવો પડે. અહીં આપણે iostream નામની લાયબ્રેરીને ટાંકી રહ્યાં છીએ.

3 -
આ લીટીને ઈરાદાપુર્વક ખાલી છોડવામાં આવી છે. જો કે એ જરુરી ન્હોતુ, પણ પ્રૉગ્રામ સુવાચ્ય બને એ માટે ખાલી છોડી છે.

4 - int main( int argc, char* argv[] )
અહીં main એ આપણા ફન્ક્શન(function)નું નામ છે. દરેક સી/સી++ પ્રૉગ્રામમાં મેઈન ફન્ક્શન હોવું જ જોઈએ અને એ પ્રૉગ્રામની શરુઆત માટેનો દરવાજો છે. જે તે ઑપરેટીન્ગ સીસ્ટમ દરેક ઍપ્લીકેશનના મેઈન ફન્ક્શનને જ સહુપ્રથમ દોડાવે છે.

અહીં મેઈનને બે પ્રકારના પ્રસાદનો ભોગ ચઢાવાયો છે: int argc અને char* argv[]. એમને ભવીષ્યમાં સમજીશું. મેઈન આપણને જે આશીર્વાદ આપે છે એનો પ્રકાર int છે, જે પણ આપણે પછી સમજીશું. (મેઈન એવા ભગવાન છે જે પહેલાં આશીર્વાદ આપે છે અને ભોગ પછી લે છે - માત્ર દેખાડવા માટે જ. હકીકતે તો એ પણ આપણા ભગવાનોની જેમ જ ભોગ પહેલા લે છે અને આશીર્વાદ છેલ્લે આપે છે.)

5 - {
કોઈ પણ ફન્ક્શનની શરુઆત આવા આરમ્ભ કૌંસ(open brace)થી કરવી પડે છે.

6 -     std::cout << “kem chho?\n”;
અહીં આપણે iostream લાયબ્રેરીના std નામના પ્રકરણ(namespace)નું cout (સીઆઉટ) નામનું ફન્ક્શન બોલાવીએ છીએ. આપણે “<<” વડે “kem chho?\n” નામનું વાક્ય એને આપીએ છીએ. એનું પરીણામ cout કેવી રીતે દર્શાવે છે એ આપણે ફરી ક્યારેક સમજીશું. વળી, “\n” શું છે એ પણ આપણે ફરી સમજીશું.

7 -     return 0;
આપણું ફન્ક્શન 0 રુપી પરીણામ આપી રહ્યું છે. આ ફન્ક્શન જેણે બોલાવ્યું હોય એને આ રકમ આપવામાં આવે છે. આપણું ફન્ક્શન main હોવાથી આ પરીણામ ઑપરેટીન્ગ સીસ્ટમને આપવામાં આવે છે. તમે જો 0 સીવાયની કોઈ રકમ પાછી વાળો તો ઑ.એસ. આપણાં પ્રૉગ્રામની અલગ રીતે સરભરા કરી શકે છે! એનાં થોડા પ્રયોગો કરો અને જુઓ કે કાંઈ ફેર પડે છે? 0 ને બદલે -1 કે 1 કે 1000 રીટર્ન કરી જુઓ.

8 - }
કોઈ પણ ફન્ક્શનનો અન્ત આવા અન્ત્ય કૌંસ(close brace)થી કરવો પડે છે.

સી++ ને અડપલું
Oct 7th, 2009 by Chirag

સી++ ને અડપલું - ચીરાગ પટેલ     ઑક્ટોબર 06, 2009

ચાલો, આજે એક નવી શરુઆત કરીએ. કમ્પ્યુટરની ભાષા શીખવી ગમશે? (ના ગમે તો પણ હું તો શીખવાડીને જ રહીશ!!!) મને પોતાને આવડતી C (સી) કે C++ (સી પ્લસ પ્લસ)ને નામે જાણીતી ભાષાઓને શીખવાનો પ્રારમ્ભ કરીએ.

તમને ‘સી’ કે ‘સી++”નો ઈતીહાસ આ લીન્ક પર મળી રહેશે: http://en.wikipedia.org/wiki/C%2B%2B. એટલે પીષ્ટપેષણ કર્યા વગર વ્યવહારુ માર્ગે શીખવાના શ્રીગણેશ જ કરી દઈએ તો કેવું? વળી, ગુગલ મહારાજ ઈંગ્લીશમાં શીખવાડતી અનેક વેબસાઈટરુપી ગંગાને તમારી કમ્પ્યુટરરુપી કથરોટમાં પ્રગટ કરી આપશે એટલે વધુ પન્ચાતમાં નથી પડવું.

જેમની પાસે લીનક્સ કે યુનીક્સ નામની ઑપરેટીંગ સીસ્ટમ છે તેઓ શેલ પર જઈને જોઈલે કે તેમની સીસ્ટમમાં gcc કે g++ નામનો કમ્પાઈલર કમાંડ ચાલે છે? વીન્ડોઝ ઑ.એસ. વાપરનારા માટે મફતીયા કમ્પાઈલર અહીથી ડાઉનલૉડ કરીને ઈન્સ્ટૉલ કરી દો: http://www.microsoft.com/express/vc/. આ પ્રૉગ્રામ તમારી સીસ્ટમમાં ઈન્સ્ટૉલ થાય ત્યાં સુધી ધીરજ ધરજો (બધી બહુ…). આ કાર્યરથને ગોઠવવા માટે એ જે વીકલ્પ પસન્દ કરીને બતાડે એ સ્વીકારી લો!

શરુઆત કરીએ “કેમ છો?” કાર્યક્રમથી (hello world program).

1) વીન્ડોઝ વપરાશકર્તા માટે:
- Visual C++ Express નામના કાર્યરથને શરુ કરો (થોડી વાર પહેલાં જ તમે એને તમારા કમ્પ્યુટરમાં ગોઠવ્યો છે!).
- File નામના મેન્યુમાંથી New વીકલ્પ પર ક્લીક કરી Project… પર ક્લીક કરો.
- એમાં ડાબી બાજુ Project types: છે એમાંથી General પસન્દ કરો.
- જમણી બાજુ દેખાતાં વીકલ્પોમાંથી  Empty Project પસન્દ કરી Name: માં કોઈ નામ (ધારો કે kemchho) આપી નીચેનું OK બટન દબાવો. આ આપણું પ્રૉજેક્ટ સૉલ્યુશન થયું.
- ત્યારબાદ જે વીન્ડો ખુલે એમાં Source Files પર માઉસનું જમણું બટન (તમે ડાબેરી હો તો ડાબુ બટન) ક્લીક કરો એટલે જે તરતું મેન્યુ આવશે એમાં Add પર ક્લીક કરો અને New Item.. પસન્દ કરો.
- જમણી બાજુથી C++ File (.cpp) પસન્દ કરો અને કોઈ નામ આપો (Name: ની બાજુમાં). (ધારો કે main.cpp). આ આપણી ફાઈલ થઈ. નીચે દેખાતાં Add બટન પર ક્લીક કરો.
- હવે તમને એક મોટા વીન્ડોમાં (જમણી બાજુ) main.cpp નામનું મથાળુ દેખાશે. આ આપણી ફાઈલ છે. એમાં નીચે મુજબનો પ્રોગ્રામ લખો.

// my first ever “kem chho?” program in c++
#include <iostream>

int main( int argc, char* argv[] )
{
    std::cout << “kem chho?\n”;
    return 0;
}

- હવે છેક ઉપરના મેન્યુબારમાંથી Build પસન્દ કરો. એટલે તમને જે દેખાય એમાંથી Build Solution પસન્દ કરો. હવે તમને છેક નીચેની બારીમાં કાંઈક થતું લાગશે. એમાં નીચે મુજબ જેવું લખાણ દેખાશે. (એક વાત ધ્યાનમાં આવી? Build Solution ની બાજુમાં F7 એવું લખેલું છે. એનો મતલબ એવો કે તમારા કીબૉર્ડ પરથી F7 નામની ચાવી દબાવો તો પણ આપણી કાર્યસુચીને બનાવવામાં આવશે.)

—— Build started: Project: kemchho, Configuration: Debug Win32 ——
Compiling…
main.cpp
Linking…
LINK : C:\Documents and Settings\cpatel\My Documents\Visual Studio 2008\Projects\kemchho\Debug\kemchho.exe not found or not built by the last incremental link; performing full link
Embedding manifest…
Build log was saved at “file://c:\Documents and Settings\cpatel\My Documents\Visual Studio 2008\Projects\kemchho\kemchho\Debug\BuildLog.htm”
kemchho - 0 error(s), 0 warning(s)
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

- હવે છે ખરી મજા… છેક ઉપરના મેન્યુબારમાંથી Debug પસન્દ કરો અને એમાંથી Start without debugging પસન્દ કરો.
- એક કાળી બારી દેખાઈ? એમાં “kem chho?” વંચાયુ?
- હાર્દીક અભીનન્દન! સી++ શીખવામાં પહેલુ પગલુ તમે ભરી લીધું.

2) લીનક્સ/યુનીક્સ માટે:

- તમારા ગમતા શેલ પર જઈને કે ગમતા એડીટર વડે kemchho.cpp નામની ફાઈલ બનાવી ઉપર મુજબની કાર્યસુચી લખી દો.
- ત્યારબાદ ફાઈલ જ્યાં છે એ જગ્યે નીચેનો કમાન્ડ આપો:

[cpatel@brahmand ~] # g++ kemchho.cpp -o kemchho

- હવે અહીં તમે જુઓ કે kemchho નામની પ્રૉગ્રામ ફાઈલ બની છે?
- આ ફાઈલ ઈક્ઝીક્યુટ કરો.

[cpatel@brahmand ~]./kemchho

- “kem chho?” વંચાયુ?
- હાર્દીક અભીનન્દન! સી++ શીખવામાં પહેલુ પગલુ તમે ભરી લીધું.

»  Substance: WordPress   »  Style: Ahren Ahimsa