[સંગીત વગાડવાનો] ડો LLOYD: બધા હક છે, તેથી દો આદેશ વાક્ય દલીલો વિશે વાત કરો. તેથી, અત્યાર સુધી આ કોર્સ ખૂબ તમારા કાર્યક્રમો ખૂબ બધા કદાચ શરૂ કર્યું છે છે આ પૂર્ણાંક મુખ્ય રદબાતલ જેવા હોય છે. અમે એકત્ર કરવામાં આવ્યા છે વપરાશકર્તા ઈનપુટ જો અમે તેને જરૂર જેમ કે અમારા કાર્યક્રમો માં મારિયો કાર્યક્રમ, ઉદાહરણ તરીકે, માં કાર્યક્રમ પૂછે છે. અમે સુધારવા માટે જરૂરી નથી મુખ્ય ઘોષણા, કારણ કે તેના બદલે મુખ્ય અમે અંદર માત્ર તમે પૂર્ણાંક વિચાર તે કહી શકે છે, કહે છે. કેવી રીતે મોટા તમે પિરામિડ પ્રયત્ન કરવા માંગો છો? અથવા તમે વિચાર તે કહી શકે છે કેટલી ફેરફાર float-- આ વપરાશકર્તા માટે હું આઉટપુટ જોઈએ? બીજી રીતે, છતાં છે અને અમે અમારા વપરાશકર્તાઓને માંગો છો પૂરી પાડવા માટે સક્ષમ હોઈ અમારા કાર્યક્રમ માહિતી તેના બદલે જ્યારે રનટાઈમે આ કાર્યક્રમ ચાલી રહ્યો છે એક ગૂઢ ભેદ પરંતુ ક્યારેક ખૂબ જ ઉપયોગી છે, અમે મુખ્ય જાહેર એક નવું સ્વરૂપ જરૂર છે. અમે કરવા માંગો છો, તો પૂર્ણાંક મુખ્ય રદબાતલ ઉપયોગ કરી શકતા નથી આદેશ વાક્ય પર અન્ય માહિતી એકત્રિત વપરાશકર્તા કાર્યક્રમ ચાલે છે ત્યારે, તેથી આદેશ વાક્ય દલીલો. આ આદેશ વાક્ય એકત્રિત કરવા માટે વપરાશકર્તા માંથી દલીલો, તમારા ઘોષણા બદલી છે આ પૂર્ણાંક જેમ દેખાય છે માટે મુખ્ય મુખ્ય, ઓપન કૌંસ, પૂર્ણાંક argc, અલ્પવિરામ, શબ્દમાળા argv, ચોરસ કૌંસ, અને પછી સર્પાકાર તાણવું ખોલો. તેથી તે પહેલાથી જ શું અર્થ છે? વેલ, અમે બે પરિમાણો પસાર કરવામાં આવે છે, મુખ્ય અથવા દલીલો, અથવા ઇનપુટ્સ. એક પૂર્ણાંક કહેવાય argc, અને અન્ય શું છે? તે હક, શબ્દમાળાઓ ઝાકઝમાળ છે? અમે તે ચોરસ કૌંસ નોટેશનમાં જુઓ. તે શબ્દમાળાઓ ઝાકઝમાળ છે. તે વ્યક્તિગત શબ્દમાળા નથી, તે શબ્દમાળાઓ ઝાકઝમાળ છે. અને આ બે દલીલો, argc અને argv, શું માહિતી વપરાશકર્તા ખબર કરવા માટે સક્રિય આદેશ વાક્ય પર પૂરી પાડવામાં આવી છે અને કેવી રીતે ઘણી વસ્તુઓ તેઓ આદેશ વાક્ય પર પૂરી પાડવામાં આવેલ. સાથે કામ કરવા માટે ખૂબ ઉપયોગી વસ્તુઓ. Argc, દલીલ ગણતરી માટે વપરાય છે અને તમે જે રીતે દ્વારા, ખબર હોવી જોઇએ, તમે argc કૉલ કરી શકે છે કે તમે તેને કરવા માંગો છો ગમે. તમે ઇચ્છતા ગમે argv કૉલ કરી શકો છો. આ માત્ર પરંપરાગત નામો છે અમે them-- દલીલ ગણતરી માટે ઉપયોગ કરે છે, અને અમે એક બીજા જોશો, દલીલ વેક્ટર, argv. પરંતુ તમે તેમને કૉલ કરવા માટે નથી તમે કરવા માંગો છો નથી, તો argc અને argv, પરંતુ પરંપરાગત, કે અમે શું છે. તેથી કોઈપણ રીતે, argc, દલીલ ગણક. તે પૂર્ણાંક પ્રકાર ચલ છે અને તેથી, અમે બે વસ્તુઓ હોય છે, જો તમે અપેક્ષા રાખી શકો છો અમે શોધવા કરી રહ્યા છીએ કે આ ટાઇપ કરી રહ્યા છે તે બહાર અને કેટલી સામગ્રી વપરાશકર્તા ટાઇપ, argc છે કેટલી અમને કહી જતા ટાઇપ વપરાશકર્તા સામગ્રી. તે તમને એક નંબર આપે છે તેથી આદેશ વાક્ય દલીલો વપરાશકર્તા કાર્યક્રમ ચલાવવામાં આવી હતી જ્યારે લખ્યો. તમારા કાર્યક્રમ છે તેથી જો કોઈ લોભી સ્લેશ ચલાવો, અને તમારા લોભી અંદર તમારી મુખ્ય કાર્ય કાર્યક્રમ જાહેરાત પૂર્ણાંક મુખ્ય પૂર્ણાંક argc છે, શબ્દમાળા પછી, ચોરસ કૌંસ argv તે કિસ્સામાં argc છે. હવે અમે નથી નોટિસ કેવી રીતે ઘણી વસ્તુઓ ગણતરી વપરાશકર્તા કાર્યક્રમ નામ પછી લખ્યો. કાર્યક્રમ નામ પોતે ગણે આદેશ વાક્ય દલીલ તરીકે. તેથી, લોભી સ્લેશ તે કિસ્સામાં, argc છે. વપરાશકર્તા સ્લેશ લોભી 1024 CS50 ટાઇપ તો તે કિસ્સામાં argc આદેશ-વાક્ય ખાતે ત્રણ હશે. અને અમે જે રીતે, કારણ કે આ ખબર કે શબ્દમાળાઓ વચ્ચે વિભાજન કે શું છે શોધાયેલ છે એક જગ્યા, અથવા એક ટેબ છે, અથવા તેમની વચ્ચે કંઈક હોય છે. જેથી સફેદ જગ્યા કોઇપણ રકમ, કહેવાતા, કિંમતો વચ્ચે આદેશ-વાક્ય ટાઇપ કેટલા સૂચવે છે. તેથી લોભી જગ્યા 1024 જગ્યા સ્લેશ CS50, argc, કે જે કિસ્સામાં, ત્રણ છે. Argv દલીલ વેક્ટર છે. વેક્ટર, જે રીતે દ્વારા, માત્ર છે એક એરે માટે અન્ય શબ્દ, અને આ એક એરે છે કે શબ્દમાળાઓ સંગ્રહ કરે છે. છે, કે જે તત્વ દીઠ એક શબ્દમાળા, શબ્દમાળાઓ કે જે વપરાશકર્તા ખરેખર આદેશ વાક્ય પર લખ્યો કાર્યક્રમ ચલાવવામાં આવી હતી. હવે, તરીકે કેસ છે કોઈપણ એરે સાથે, તમે તો અમારી ચર્ચા યાદ એરે, argv પ્રથમ તત્વ હંમેશા જોવા મળે કરી રહ્યું છે argv ચોરસ કૌંસ શૂન્ય છે. તે પ્રથમ ઇન્ડેક્સ છે આ argv એરે છે. કે જેથી will-- અને હકીકતમાં, કે ચાલશે હંમેશા કાર્યક્રમના નામ હોઈ શકે છે, હંમેશા પર સ્થિત આવશે argv ચોરસ કૌંસ શૂન્ય. Argv ના છેલ્લા તત્વ હંમેશા જોવા મળે છે argv ચોરસ કૌંસ argc ઓછા એક છે. તમે શા માટે જુઓ છો? કેટલા તત્વો યાદ રાખો આ એરે અસ્તિત્વ ધરાવે છે. વેલ, અમે તે that-- ખબર તત્વો argc સંખ્યા. વપરાશકર્તા અંતે ત્રણ વસ્તુઓ લખ્યો તો આદેશ વાક્ય, argc ત્રણ છે. પરંતુ કારણ કે સી, ત્યારે અમે કામ કરી રહ્યા છીએ એરે સાથે, એરે દરેક તત્વ, અથવા બદલે સૂચકાંક એરે શૂન્ય શરુ થાય છે. અમે ત્રણ ઘટકો હોય તો અમારા અરે, અમે argv શૂન્ય પર એક તત્વ છે argv એક એક તત્વ, argv બે અને એક તત્વ. Argv કોઈ તત્વ છે ત્રણ, અને કદ ત્રણ ઝાકઝમાળ. તેથી કે શા માટે છેલ્લા છે argv તત્વ હંમેશા કરી શકો છો argv સ્ક્વેર ખાતે શોધી શકાય કૌંસ argc ઓછા છે. તેથી આ વપરાશકર્તા ચલાવે ધારે દો નીચે પ્રમાણે લોભી કાર્યક્રમ તેઓ આદેશ-વાક્ય ટપકું લખો તો લોભી જગ્યા 1024 જગ્યા CS50 સ્લેશ અને કારણ ગમે તે માટે અમે કર્યું પહેલેથી જ અમારી લોભી કાર્યક્રમ તૈયાર ખબર છે અને આ સાથે કામ કરવા માટે આદેશ વાક્ય દલીલો. અમે કામ કર્યું ત્યારે અમે અગાઉ ન હતી લોભી સમસ્યા માટે તે પર, પરંતુ અમે હવે ફેરફાર કર્યું છે કહે દો તે છે કે જેથી અમે પ્રક્રિયા અમુક રીતે આદેશ વાક્ય દલીલો. આ કિસ્સામાં, શૂન્ય argv કોઈ સ્લેશ લોભી છે. Argv એક શું છે? વેલ, તે યોગ્ય, 1024 છે? તે 1024 છે, પરંતુ અહીં એક છે ખરેખર મહત્વનું distinction-- તમે argv માહિતી પ્રકાર યાદ છે? તે હક, શબ્દમાળાઓ સંગ્રહ? પરંતુ તે 1024 જેવો દેખાય છે પૂર્ણાંક કિંમત છે. આ એક ખરેખર મહત્વનું છે ભેદ, અને ખરેખર છે કંઈક બની રહ્યું છે કે જે તમને પાછળથી સમસ્યાઓ અનુભવી શકે છે. Argv બધું છે શબ્દમાળા તરીકે સંગ્રહ. તેથી argv એક સમાવિષ્ટો છે શબ્દમાળા એક, શૂન્ય, બે, ચાર, તે ચાર અક્ષરો સમાવેશ થાય છે. તે વપરાશકર્તા ટાઇપ, જો તરીકે છે એક, શૂન્ય, બે, ચાર વ્યક્તિગત અક્ષરો અથવા અક્ષરો તરીકે. તે પૂર્ણાંક 1024 નથી અને તેથી તમે સીધા નથી કરી શકો છો પૂર્ણાંક 1,000 કહેતા તેની સાથે કામ, અથવા તેના બદલે પૂર્ણાંક એક્સ argv એક ઓછા 24 સમકક્ષ હોય છે. તર્ક, કે જે તમને લાગે શકે છે ઠીક છે, સાથે સાથે તે 1,024 ઓછા 24 છે, કારણ કે તેથી એક્સ 1000 સમાન છે. પરંતુ હકીકતમાં, કે કેસ નથી argv એક સ્ટ્રિંગ છે, કારણ કે. શબ્દમાળા 1024. હવે શકો છો કે જે કાર્ય છે પૂર્ણાંકો માટે શબ્દમાળાઓ કન્વર્ટ કરવા માટે વપરાય. હું તમારા માટે તેને બગાડી નહીં હવે, પરંતુ હું Zamyla ખાતરી છે કે છું તે વિશે તમને કહી ખુશ હશે ભવિષ્યના સમસ્યા માટે walkthrough. પરંતુ તમે પણ શોધી શકો છો સમસ્યાઓ જેવા બહાનું મને, કાર્યો કે કરશે સંદર્ભ 50 આવું, તમે સંદર્ભ માર્ગદર્શન પર જાઓ, તો તમે એક કાર્ય શોધી શકો છો કે તમારા માટે આ રૂપાંતર કરશે. પરંતુ ફરીથી, આ walkthrough ભવિષ્યના સમસ્યા માટે, Zamyla કરવા માટે ખુશ હશે શું કાર્ય તમે કહો તે રૂપાંતર કરશે પૂર્ણાંક 1024 માટે શબ્દમાળા 1024. બધા હક છે, તેથી પર ખસેડવાની. અમે અમારા argv શૂન્ય આવરી કર્યું અમે એક argv આવરી લેવામાં આવ્યાં છે. શું argv બે છે? CS50. તે એક કદાચ છે ખૂબ સ્વયંસ્પષ્ટ. શું argv ત્રણ છે? વેલ ફરી, અમે ખરેખર ખબર નથી, અધિકાર? અમે કદ ત્રણ ઝાકઝમાળ છે કે કેટલા તત્વો વપરાશકર્તાની આદેશ વાક્ય પર લખ્યો, તેથી અમે ત્રણ argv પર જાઓ, તો આપણે હવે વધુ પડતા પગલાં રહ્યા છો અમારા એરે સીમાડાં. આ કમ્પાઈલર, અમને આ કરવા દો કોઈ સાહજિક સમસ્યા તેની સાથે છે, પરંતુ વાસ્તવમાં શરતો શું ચાલી રહ્યું છે થાય છે, અમે ખરેખર ખબર નથી. તે શું છે પર આધાર રાખે છે મેમરી જ્યાં સ્થિત argv ત્રણ તેવી અપેક્ષા કરવામાં આવશે. અને તેથી અમે અંત કરી શકે છે દૂર સ્કોટ મફત મેળવવામાં. શક્યતા વધુ કરતાં નથી, ખાસ કરીને જ્યારે વિરોધ તરીકે તમે argv સાથે કામ કરી રહ્યા છીએ અન્ય કોઇ એરે માટે કે અમારા કાર્યક્રમ છે અમે કદાચ સહન કરવા જઈ રહ્યાં છો સેગ્મેન્ટેશન ક્ષતિમાં. તેથી ફરી, ભૂસકે overstep ખાતરી કરી તમારા એરે, ખાસ કરીને argv, તેની ઊંચી ડિગ્રી આપવામાં તમારા કાર્યક્રમો માં મહત્વ. હું ડો લોયડ છું. આ CS50 છે.