જેસન HIRSCHHORN: સ્વાગત 5 માટે, દરેક. અમે અમને આગળ એક આકર્ષક સપ્તાહ છે ઘણા નવા છે મોટે ભાગે કારણ કે આ રૂમ માં સામનો કરે છે. તે અદ્ભુત છે. તમે ઘણાં અકસ્માત દ્વારા અહીં છે, જે પણ સારી છે. તેથી આશા છે કે તમે અમને જોડાયા રાખીએ છીએ. આ અઠવાડિયે આપણે પસાર રહ્યા છીએ વિભાગ બલ્ક ક્વિઝ માટે તૈયાર. અમારા કાર્યસૂચિ દીઠ તેથી, અમે વાત રહ્યા છીએ વર્ગ માટે સાધનો વિશે થોડી, પણ ક્વિઝ માટે, અને પછી ફરી, વર્ગ વાતચીત ની બલ્ક ખર્ચ પ્રશ્નો વિશે. અમે જવાબ આપવા પૂર્ણ કરી એક વાર તમારા પ્રશ્નો, અથવા જો તમારા પ્રશ્નો કુદરતી રીતે હું કેટલાક કોડિંગ પર લાવે છે midterms થી નમૂના સમસ્યા હોય છે અમે વિભાગમાં Live કોડ માટે કરશે છેલ્લા સાથે પણ કેટલાક અન્ય લાવવા કે આવરી સારા વિષયો. તેથી પ્રથમ, અમે માટે પસાર કર્યું તરીકે તમને યાદ છે અઠવાડિયા છેલ્લા થોડા ગાય્સ, સ્રોતો એક ટન છે આ કોર્સ માટે ઉપલબ્ધ છે. તેમાંના ઘણા ઉત્સાહી મદદરૂપ થશે તમે તમને ચાલુ રાખવા તરીકે , 0 ક્વિઝ માટે અભ્યાસ કારણ કે તે મંગળવારે બપોરે છે. તેથી તમે બધા કરવામાં આવી છે ઘડીભર અભ્યાસ. વ્યાખ્યાન નોંધો અને સ્રોત છે કોડ કે જો તમારી પાસે જોઈએ ચોક્કસપણે જુઓ. આ ટૂંકી ફિલ્મ જુઓ. Study.cs50.net તપાસો. અને પછી, એક નંબર છે, નીચે યાદી થયેલ અન્ય સાધનો છે. ફરીથી, 0 ક્વિઝ કાલે છે 1 વાગે. જો તમે પહેલેથી કર્યું નથી, તો તપાસો આ પર વિશે ક્વિઝ 0 દસ્તાવેજ બહાર આકૃતિ કોર્સ હોમપેજ તમે ક્વિઝ વાત કરી રહ્યાં છે. આ ક્વિઝ 1:10 પર શરૂ થાય છે અને 70 મિનિટ પછી અંત થાય છે. તમે 1:10 પછી બતાવવામાં તેથી, જો તમે કે ઘણા ઓછા મિનિટ બનશે 70 ક્વિઝ લેવા કરતાં. જેથી તમે સમય પર ત્યાં છો તેની ખાતરી કરો. તમે એક એક્સ્ટેંશન વિદ્યાર્થી છો અથવા હોય તો કેટલાક અન્ય બાબતો ચકાસણી, તે 1 વાગ્યે આવતી કાલે પર હોઈ શકે છે. પરંતુ ફરીથી, આ વિશે ક્વિઝ 0 તપાસો ખાતરી કરો કે તમે જ્યારે ખબર બનાવવા માટે દસ્તાવેજ તમે ક્વિઝ લઇ રહ્યા છીએ. હું અહીં 75 મિનિટ લખ્યું હતું. હું 70, યોગ્ય નથી એવું લાગે છે. તે એક સપ્તાહ 0 થી તમામ સામગ્રી આવરી લે છે બુધવારે ગયા અઠવાડિયે લેક્ચર. અને ફરીથી, આ ક્વિઝ માટે, કે પ્રતિ દસ્તાવેજ, તમે એક બે બાજુ વિશે અને 8 તમે વિચાર કે કાગળ 11 શીટ દ્વારા 1/2 ક્વિઝ દરમિયાન નોંધ તરીકે વાપરવા માટે. ઘણા લોકો, મોટા ભાગના લોકો હોય તો નથી જાણવા મળ્યું છે કે આ એક સૌથી ઉપયોગી માર્ગ ક્વિઝ માટે અભ્યાસ કરવા માટે છે એક અભ્યાસ શીટ, એક કરો એક પોતાના સાઈડર,. તેથી છેલ્લા મુદ્દાઓ જોવા હોય તો તમે ભૂતકાળમાં મુદ્દાઓ જોઇ છે. જુઓ મિત્રો સુધી પહોંચવાનો શું તેઓ ધેર પર આપી રહ્યા છીએ. પરંતુ હાથ નીચે, તમે કરી શકો છો શ્રેષ્ઠ માર્ગ અભ્યાસ બધું મારફતે પસાર થવા માટે છે અને શું જોઈએ અથવા જોઈએ કમી કરવું તે નીચે કે શીટ પર સંબંધ કાગળ, કે જે હમણાં જ ખરેખર છે, કારણ કે તમે તેની ખાતરી કરવા માટે ઉપયોગી માર્ગ તમે બધું પસાર થઇ રહ્યાં છો અને તેની સાથે કેટલાક પારિવારિકતા છે. મોટા ભાગના લોકો, અમે શોધવા છતાં પણ તેઓ કાગળ શીટ યોગ્ય બેઠક છે ક્વિઝ પર તેમને આગળ, ચાલુ નથી તે માટે, ફરી, તે ખૂબ જ છે, કારણ કે જાણકારી મેળવી જવાની પ્રક્રિયા તેમને તે જાણવા મદદ કરી છે. કોઈની કોઇ પ્રશ્નો હોય તો 0 ક્વિઝ વિશે શું? બધાને છે - હું હાથ એક શો કરવા જઇ રહ્યો છું. કશો વાંધો નહીં. હું જે કહી રહ્યા હતા અભ્યાસ શરૂ કર્યો. પરંતુ હું તમને કરવા નહિં માંગો તમારા બધા હાથ ઊંચા નથી. હું જણાવ્યું હતું કે, તેથી જેમ - હા, AVI, આગળ વધો. આવી: શું ઉપયોગી વસ્તુ હોઈ શકે છે એક પેજર પર મૂકવા? વિધાર્થી કે તમારા પર છે. જેસન HIRSCHHORN: તમે વિચાર તમારા નિર્ણય વાપરો. એક પેજર પર મૂકવા ઉપયોગી વસ્તુઓ, તમે મોટા ઓ વિશે અસ્પષ્ટ છે જો શોધ વિવિધ પ્રકારના રનટાઈમ અને પ્રકારના, એક ત્યાં પર મૂકી હાથમાં છેલબટાઉ ચાર્ટ. આ રીતે, તમે પર પૂછવામાં કરી રહ્યાં છો ક્વિઝ, તમે પ્રયાસ કરો અને આકૃતિ જરૂર નથી તેને અથવા રનટાઈમ દ્વારા કારણ. તમે હમણાં જ તે નીચે નકલ કરી શકો છો. તમે અંગેની ક્વિઝ ભૂતકાળ, ઘણો જોવા વખત, સમય પ્રશ્નો ચાલી રહ્યો છે. તેથી તે એક સારી એક ઉદાહરણ છે તમારા એક પેજર પર મૂકવા બાબત. તમે છો, પર મૂકવા અન્ય સારી વસ્તુઓ જાહેર કરવા વિશે ગેરસમજ એક કાર્ય અથવા શું વિવિધ ભાગો કાર્ય જાહેરાત લખી છે, કે ત્યાં પર, જિનેરિક વર્ઝન અને પછી કદાચ એક ઉદાહરણ. તમે પોઇન્ટર વિશે અસ્પષ્ટ છો, પોઇન્ટર કામ કેવી રીતે એક રેખાકૃતિ કદાચ ખરેખર ઉપયોગી. તમે રિકર્ઝન, એક વિશે અસ્પષ્ટ છો ત્યાં ફરી યાદ આવવું કાર્ય નમૂનો પણ ખરેખર મદદરૂપ સાબિત થઇ શકે છે. કે તમે કેટલાક વિચારો આપે છે? આવી: તમે સમજવા માટે જરૂર જેમ સમગ્ર કમ્પાઇલ પ્રક્રિયા, કેવી રીતે બધા કામ કરે છે કે? જેસન HIRSCHHORN: બધું કે આવી છે શકે ક્વિઝ પર બતાવે છે. પ્રશ્નો - પરંતુ ફરીથી, કેટલીક વસ્તુઓ હશે અન્ય કરતાં ભારે ભારાંક. કેટલીક વસ્તુઓ ફરીથી આવે છે અને ફરીથી વર્ગ, માં વ્યાખ્યાન, અને વિભાગ. અન્ય વસ્તુઓ નથી તે ઘણી વખત આવે છે. અમે # સમાવેશ થાય છે અને વિશે ઘણું વાત કરી છે -L કંઈક અને શું તે અર્થ સંકલન પ્રક્રિયા. અમે મજબૂત રીતે પકડી રાખવું, GDB વિશે ઘણું વાત કરી છે અમે ઉપયોગ કે તે વિવિધ ફ્લેગ જ્યારે અમે કંઈક કમ્પાઇલ, અને શું make15, ઉદાહરણ તરીકે, ખરેખર અર્થ થાય છે અને ખરેખર કરે છે. અમે ખૂબ વાત નથી દરેક એક પગલું સંકલન પ્રક્રિયા. અમે હજી પણ તે વિશે વાત કરી છે. તેથી તે હજુ પણ છે કે જો તમે કંઈક છે સાથે પરિચિત હોવા જોઈએ. પરંતુ ફરીથી, અમે કરી નથી જઈ રહ્યાં છો - વર્ગ વધુ વખત આવી વસ્તુઓ છે કે જે વધુ આવે તેવી શક્યતા છે ઘણી વખત અને વધુ ભારે કરી ક્વિઝ પર ભા. કૂલ. 0 ક્વિઝ વિશે કોઇ અન્ય પ્રશ્ન છે? ઠીક છે, તેથી હું યાદી મૂકી બોર્ડ પર વિષયો. હું અભ્યાસક્રમ પસાર થયું હતું. હું ના સમીક્ષા વિભાગ દ્વારા ગયા આવે છે છેલ્લા રાત્રે અને તે સ્લાઇડ્સ વિષયોની બિન સંપૂર્ણ યાદી સાથે અમે CS50 માં અત્યાર સુધી આવરી લેવામાં આવ્યા છે કે અને વસ્તુઓ કે કદાચ ક્વિઝ પર દેખાય છે. તેથી હું મારફતે પસાર થવા માટે નથી જઈ રહ્યો છું આ દરેક એક એક. કે વધુ લેશે અમે હવે કરતાં સમય. પરંતુ હું આશા ધક્કો અહીં આ મૂકી વસ્તુઓ માટે તમારી મેમરી કે કરી શકે છે અથવા તમે સાથે પરિચિત ન પણ હોય. અને હું બલ્ક પસાર છો વિશે તમારા પ્રશ્નોના જવાબ આપવા વિભાગ આ મુદ્દાઓ, વિષયો કે અહીં આવરી લેવામાં આવે છે. અમે સ્યુડો કોડ લખી શકો છો. અમે વાસ્તવિક કોડ લખી શકો છો તેની ખાતરી કરવા માટે કે જે તમને - હું તમારા પ્રશ્નનો જવાબ અને મદદ કરી શકે છે બધાને મૂળભૂત સમજી એક આ મુદ્દાઓ ઘણો તમને લાગે પડશે જેથી રહ્યું માં તૈયાર અને આરામદાયક ક્વિઝ કાલે. તેથી ઉપર યાદી વાંચો. તમે આસ્થાપૂર્વક વિભાગ આવે છે કેટલાક પ્રશ્નો સાથે સાથે સાથે. તમે તૈયાર છો, ત્યારે તમારા હાથમાં એકત્ર અને અમે શરૂ કરશે. ધ્યાનમાં રાખો, પ્રશ્નો તમારી પાસે છે, કોઈ મૂર્ખ પ્રશ્નો હોય છે. અમે ઘણો કર્યો. અને તમારી પાસે પ્રશ્નો, હું તૈયાર છું , અન્ય ઘણા લોકો બંને હોડ અહીં બેઠક અને જોવાનું અમને પણ છે. તેથી જો તમે માત્ર લોકોને મદદ કરી શકે પ્રશ્નો પૂછીને. માર્કસ. MARCUS: સ્ટેક અને વચ્ચે ઢગલો, પૂર્વ ફાળવવામાં છે તરીકે વ્યાખ્યાયિત છે કે મેમરી ટકાવારી આ સ્ટેક માટે અથવા ઢગલો માટે છે? અથવા કેવી રીતે જે સફળ થાય છે? જેસન HIRSCHHORN: મહાન પ્રશ્ન. હું થોડો ટ્રેસ પાછળ જાઉં છું. બધાને કરે છે - અહીં પ્રમાણિક પ્રયત્ન કરો. હું વધારવા માટે તમે પૂછવા છું ખબર તમારા તમારી પેઢીઓ સામે હાથ. પરંતુ લાગે છે કે જે લોકો છે સ્ટેક અને ઢગલો સાથે અસ્વસ્થતા અને તે પર જવા માગો છો અને તે શું અર્થ? તમારા હાથમાં તો વધારો - બરાબર. આભાર. તેથી અમે સ્ટેક પર જાઓ રહ્યું છે અને કરી રહ્યાં છો ઢગલો ખરેખર ઝડપથી અને પછી તમારા પ્રશ્નનો જવાબ ખસેડો. અમે પ્રતિનિધિત્વ બોક્સ દિવસોનું તેથી જો તમારા કમ્પ્યુટર પર મેમરી, કેટલાક શું છે આ બૉક્સમાં પર વસ્તુઓ? મુખ્ય. એક મુખ્ય કાર્ય. જ્યાં મુખ્ય જાઓ નથી? વિધાર્થી [અશ્રાવ્ય]. જેસન HIRSCHHORN: તેથી અમે પડશે નીચે અહીં મુખ્ય મૂકો. બીજું શું આ બૉક્સમાં જાય છે? વિદ્યાર્થી: તમે ઓળખાવવામાં આવતી કાર્ય કરે છે. જેસન HIRSCHHORN: આ કાર્યો આપણે કહી છે. અને જ્યાં તેઓ જવું છે? વિધાર્થી સ્ટેક માં. જેસન HIRSCHHORN: તેઓ સ્ટેક માં જાઓ. તેથી અમે આ કહી રહ્યા છીએ નીચે અહીં વસ્તુ સ્ટેક. અને રીચાર્જ, અમે ઢગલો છે. તેથી મેમરી ફક્ત આ જેવી બોક્સ નથી. પરંતુ તે ખરેખર ખૂબ જ છે. તે પર બોક્સ ઘણો જ હશે અને ઉપર, તેના પર આધાર રાખીને મોટા કેવી રીતે તમારા કમ્પ્યુટર છે અથવા તમારી મેમરી કેવી રીતે મોટી છે. ક્વોટ-અવતરણ ચિહ્નો પૂરાં કરવાં "નીચે" પર સ્ટેક છે. અને ઘણી વસ્તુઓ છે કે સ્ટેક પર જાઓ. અને તે વિધેયો પર આધાર રાખે છે તમે તમારો કોડ છે. તમે હંમેશા એક કાર્ય છે તમારા કોડ મુખ્ય કહેવાય છે, જેથી ત્યાં હંમેશા નીચે અહીં માં વિભાગ મુખ્ય સમર્પિત ગંજી. સ્ટેક માં આ વિભાગો સ્ટેક ફ્રેમ્સ કહેવાય છે. તમે બીજા કાર્ય કૉલ, ત્યારે મુખ્ય કહે છે દ્વિસંગી શોધ કાર્ય કહે છે, અમે સ્ટેક પર અન્ય ફ્રેમ મૂકી. વધુ ચોક્કસ રીતે, અમે જોઈ રહ્યા છે પર મેમરી એક ભાગ દાન અમારી દ્વિસંગી શોધ સ્થાનિક સંગ્રહ કરવાની કમ્પ્યુટર ચલો અને બાઈનરી ચલાવવા માટે શોધ કોડ. તેથી અમે દ્વિસંગી શોધ પર ફોન કરો. મેમરી આ ભાગ માં, અમે રહ્યા છીએ તેની સ્થાનિક ચલો સંગ્રહવા માટે. અમે તેના printf કોલ સંગ્રહ રહ્યા છીએ. થાય ગમે તે, તે કાર્ય છે અધિકાર ત્યાં સંગ્રહ કરી રહ્યા. બાઈનરી શોધ ચલાવવા રહ્યું છે. તે અમલ પૂર્ણ રહ્યું છે. સી શબ્દ શું છે કે દર્શાવે છે એક કાર્ય જોઈએ કે તેને ચલાવવા પૂર્ણ? વિધાર્થી વળતર. જેસન HIRSCHHORN: પાછા ફરો. તેથી તમે વળતર સ્ટેટમેન્ટ જુઓ ત્યારે, કાર્ય અંત તે બનાવ્યા છે. તેથી દ્વિસંગી શોધ તેના વળતર ફટકો પડશે. મેમરી આ ભાગ અનિવાર્યપણે કરશે મુક્ત કરી. અને મુખ્ય પાછા અમલ પર જશે. , કોલ હતો તેથી ત્યાં મુખ્ય અટકાવવા કરશે દ્વિસંગી શોધ, કેટલાક પરત કિંમત મેળવવા માટે, અને અમલ ચાલુ રાખો. આ સ્ટેક ફ્રેમ દૂર જાય છે. અમે ફરી યાદ આવવું કાર્ય છે, જે કોલ કરો પોતે ઉપર કહે છે કે એક કાર્ય છે અને ઉપર, અમે વિચાર કરી શકે છે - અમે કહી પુનરાવર્તિત દ્વિસંગી શોધ હતી. અમે દ્વિસંગી શોધ આવૃત્તિ એક વિચાર કરી શકે છે દ્વિસંગી શોધ બે, દ્વિસંગી શોધ ત્રણ, દ્વિસંગી શોધ ચાર, દ્વિસંગી શોધ પાંચ. અને પછી આ અંતિમ દ્વિસંગી શોધ પાંચ આધાર કેસ, અને સ્ટેક ફટકો પડશે ફ્રેમ પાછા જાઓ અને બંધ રાખશે અમે પાછા મુખ્ય મેળવવા ત્યાં સુધી. અમે થોડી માં રિકર્ઝન પર જઈ શકે છે. જો તમે પણ આ બધા કહે છે, છે , એક જ સમયે અનેક કાર્યો ફોન ઘણા સ્ટેક ત્યાં હશો સ્ટેક પર ફ્રેમ. આ ઢગલો, બીજી તરફ, અહીં, કાર્યો માટે નથી, નથી સ્થાનિક ચલો માટે. તે ગતિશીલ ફાળવણી માટે છે ચલો. તેથી આ હોઈ શકે છે તે ચલો છે મુખ્ય અથવા ક્યાં આરંભ કે મુખ્ય કોલ્સ કામ કરે છે. ગમે ત્યાં તમારો કોડ માં, તેઓ આરંભ કરી શકાય છે. અને એક ગતિશીલ પ્રારંભ કરવા ફાળવવામાં ચલ. અમે સી શું કાર્ય કરે છે? વિધાર્થી Malloc. જેસન HIRSCHHORN: Malloc. તમે malloc કૉલ કરો. તમે મેમરી એક જગ્યા વિશે. અને મેમરી કે જગ્યા આ ઢગલો છે. અને મેમરી કે જગ્યા રહે છે જો તમારી પાસે મુક્ત ત્યાં સુધી કહી. તેથી ગતિશીલતાથી ફાળવેલ ચલોમાં ઢગલો તમે જ્યાં સુધી માટે અસ્તિત્વમાં હશે તેમને હાજર કરવા માંગો છો, અને તેઓ નથી બાહ્ય રીતે તમે ત્યાં સુધી જાય દૂર જવા કહો. તમે એક કાર્ય તેમને બનાવી શકો છો. કે કાર્ય સ્ટેક ફ્રેમ દૂર જાય છે. પરંતુ તે ચલ હજુ પણ અસ્તિત્વ ધરાવે છે ઢગલો તે મુક્ત છે ત્યાં સુધી, સંભવિત કહેવાય કે કાર્ય દ્વારા દ્વિસંગી શોધ અથવા જે. તેથી તે ઢગલો ચલો ત્યાં રહેવા જ્યાં સુધી તમે ઇચ્છો તરીકે માટે તેમને ત્યાં રહેવા. અને તેઓ અહીં મૂકી છે. અને પછી આગામી એક ત્યાં મૂકવા નહીં. તેઓ ભરી રહ્યું રાખો, અને તેઓ જો તમારી પાસે મુક્ત કૉલ સુધી ત્યાં જ રહો. અને અનિવાર્યપણે, ઢગલો અને સ્ટેક, , માર્કસ પ્રશ્નનો મેળવવામાં એકબીજા તરફ વિકસે છે. તેઓ એક બીજા પણ, તો તમે કરેલા બધી મેમરી ઉપયોગ તમારા કમ્પ્યુટર અને તમારા કાર્યક્રમ બહાર નીકળવા કરશે તમે વધુ મેમરી નથી કારણ કે વાપરવા માટે છોડી દીધી હતી. તેમની વચ્ચે, ત્યાં છે સંભવિત અન્ય વસ્તુઓ. પરંતુ આ કોર્સ માટે તક, તમારા માટે તે અંગે ચિંતા કરવાની જરૂર નથી. જેથી જવાબ હતો તમારા પ્રશ્નનો. તે વિશે ચિંતા કરશો નહીં. પરંતુ તે લાંબા જવાબ હતો. તમે જાણવા જરૂર છે આ છે ઢગલો અને સ્ટેક કરશે - એક નીચે પર શરૂ થાય છે. આ સ્ટેક છે. આ ઢગલો અપ છે. તેઓ એક બીજા નજીક વૃદ્ધિ કરશે. તેઓ સ્પર્શ અને, જો કે એક સમસ્યા છે. તમે મેમરી સમાપ્ત થઈ. પણ, જાણીને ઉપરાંત જ્યાં તેઓ શું બંને માં સંગ્રહાય છે છે સ્ટેક, અને ઢગલો. કર્ટિસ. CURTIS: તેઓ ટકરાતા છે, કે સ્ટેક ઓવરફ્લો છે? જેસન HIRSCHHORN: તેઓ ટકરાતા છે, કે સ્ટેક ઓવરફ્લો નથી. એક સ્ટેક ઓવરફ્લો અલગ વિસ્તાર છે તમે કરવા માંગો છો અમે ઉપર જઈ શકે છે. ઠીક છે, અમે થોડી માં પાછા કે આવવું પડશે. વિધાર્થી કહેવાય શબ્દ શું છે તે એક બીજા હિટ છે, જે સ્ટેક અને ઢગલો? જેસન HIRSCHHORN: હવે માટે, વિશે ચિંતા કરશો નહીં. જસ્ટ ખબર છે - હું કે પ્રશ્નનો જવાબ આપશે વર્ગ પછી. તેઓ એક બીજા સાથે ચલાવવા માટે, તમે સમાપ્ત થઈ કોઈ વધુ છે મેમરી, કારણ કે ત્યાં જગ્યા. વિદ્યાર્થી: માફ કરશો, એક seg દોષ શું છે? જેસન HIRSCHHORN: એક સેગમેન્ટમાં ખામી માટે કહી શકાય - પાંચ seg દોષ માતાનો કહેવાય શા માટે આધાર રાખે છે. ક્યારેક, તમારા સ્ટેક ઓવરફ્લો, તે પડશે seg ભૂલ તરીકે દોષ છે. વિધાર્થી શું સંદર્ભ કર્યા વગર વિશે નલ ચલ? કે seg દોષ છે? જેસન HIRSCHHORN: Dereferencing એક નલ નિર્દેશક - ઠીક છે, તેથી જો તમે તે તમે એક નિર્દેશક હોય તો null સમાન સુયોજિત કરે છે, પોઇન્ટર, યાદ, સ્ટોર મેમરી સરનામા તેમની કિંમતો રિલીઝ. અને એક નલ નિર્દેશક આવશ્યક છે 0 સ્ટોર કરે છે, જે 0 મી કે ચલ સંબોધવા. તેથી 0x, 0, 0, 0, 0, વગેરે એટ. નથી કે મેમરી કે 0 મી આંકડાના અમારા ચિત્રમાં, જે છે ક્યાંક, કે અનામત છે કમ્પ્યૂટર માટે. અમે તેને સ્પર્શ કરવાની અનુમતિ નથી. તેથી તમારા કાર્યક્રમ ચલાવવા છે, ત્યારે તો કંઈક મેમરી પર જવા માટે પ્રયાસ કરી રહી છે 0, તે જાણે છે કે કે ખાલી કિંમત છે. તે કશું જ હોવું જોઈએ તેઓ જાણે છે. તેથી જો તમને ત્યાં કંઈક પ્રયાસ કરો અને તમે વાપરો તો અને જેમ ત્યાં કંઈક સારવાર અથવા તે સ્થાન પર જવા માટે પ્રયાસ કરી રહ્યા છે, તો તમે છો seg દોષ છે અથવા કોઈ ભૂલ બનશે. કે તમારા પ્રશ્નનો જવાબ આપે છે? અને હવે અમે પાછા જવા પડશે ઓવરફ્લો ગંજી. તમે ગાય્ઝ છે કારણ કે સ્ટેક માં વસ્તુઓ, પહેલાં જોઈ, માં - ચાલો એક પાસે દો સ્ટેક ફ્રેમ છે. બધા લોકો જોઈ શકો છો? જેથી અમે અમારા સ્ટેક ફ્રેમ હોય છે. અમે સ્થાનિક તરીકે ઝાકઝમાળ સાચવી રહ્યા છો આ કાર્ય ચલ. તેથી અમારા એરે પાંચ સ્થળો ધરાવે છે. તે તમામ પાંચ સંગ્રહિત કરવામાં આવશે કે સ્ટેક ફ્રેમ માં. અમે બહાર લખવાનું શરૂ જો આ એરે સીમાથી - તેથી અમે માં લખવાનું શરૂ કરવા માટે, ચાલો તેને 0 છે કહો. તે પાંચ નિર્દેશિકાઓની છે અમારા એરે. અમે ઇન્ડેક્સ 5, માં લખવાનું શરૂ જો જે અમે એક હોય ત્યારે અમે નથી કદ 5 એરે, અમે માં લખવાનું શરૂ ઇન્ડેક્સ 6, 7, 8, 9, અમે સ્ટેક મેળવી શકો છો ઓવરફ્લો ભૂલ. સામાન્ય રીતે તે નથી - તમે કદાચ મુશ્કેલી માં મળશે તમે એક પછી પર જાઓ. પરંતુ સામાન્ય રીતે, તમે પ્રવેશ મેળવવા કરશે તમે ખૂબ દ્વારા જાઓ સૌથી મુશ્કેલી અને તમે અત્યાર સુધી તમારી ઉપર લખી કે જાઓ કે પરત આંકડાના પર આ પર સ્થિત છે જે કાર્ય, સ્ટેક ફ્રેમ નીચે. અધિકાર, કારણ કે? તમે - માં - માફ કરશો. નથી "અધિકાર છે." સ્ટેક ફ્રેમ માં, તમારી પાસે તમારા સ્થાનિક ચલો. સ્ટેક ખૂબ તળિયે ફ્રેમ પરત સરનામું છે. કાર્ય કે જ્યાં છે તે ઉપર છે જ્યારે જાય છે. અને તમે કે વળતર પર ફરીથી લખી જો સરનામું પછી આ સ્ટેક ફ્રેમ છે, તમે સ્ટેક પસાર થઇ રહ્યા હો ત્યારે ફ્રેમ અને દરેક વાક્ય ચલાવવા, તમે છો તમારા નવા વળતર સરનામા પર જાઓ રહ્યું કે બદલે ત્યાં લખેલું વાસ્તવિક છે. અને તે અમે જોઇ છે કેવી રીતે કેટલાક સુરક્ષા ભંગ કમ્પ્યુટર સાથે થઇ શકે છે. તેથી જ્યારે સ્ટેક ઓવરફ્લો, ટૂંકમાં, છે તમે સ્ટેક માં ભાગ પર ફરીથી લખી જો તમે સ્થાનિક ઉપયોગ માનવામાં કરી રહ્યાં છો ચલ તમે ઉપયોગ કરવા માનવામાં આવે છે, અને કરી રહ્યાં છો ખાસ કરીને તમે પર ફરીથી લખી શરૂ જ્યારે તેના જેવા મહત્વપૂર્ણ વસ્તુઓ આંકડાના આવો. જો તમને ભૂલ મળશે અને તે છે જ્યાં. અથવા કદાચ તમે પણ શરૂ કરી શકે છે પણ માં લખી - દ્વિસંગી શોધ હતી કહે છે જમણી મુખ્ય ઉપર. જો તમે ઘણો પર અધિલેખિત થશે તો મુખ્ય માં લખી શકે છે. પરંતુ સામાન્ય રીતે, તમે પહેલાં એક ભૂલ મળી કમ્પ્યુટર જાણે પછી, કારણ કે શું તમે ખરેખર કંઈક કરી રહ્યા છીએ કરી ન હોવી જોઇએ. અરે વાહ. વિધાર્થી શું તફાવત છે સ્ટેક ઓવરફ્લો વચ્ચે અને એક બફર ઓવરફ્લો? જેસન HIRSCHHORN: બફર ઓવરફ્લો એક વધુ સામાન્ય પ્રકાર છે હું માત્ર વર્ણન કર્યું છે તે. વિધાર્થી તેથી સ્ટેક ઓવરફ્લો એક છે એક બફર ઓવરફ્લો ઉદાહરણ. જેસન HIRSCHHORN: ચોક્કસ. આ અમે એક તરીકે વિચાર કરી શકો છો ઝાકઝમાળ છે બફર, સાઇન જાઓ વસ્તુઓ માટે જગ્યા આ એક સ્ટેક બફર ઓવરફ્લો છે. અમે ઢગલો બફર ઓવરફ્લો કરી શકે છે. જે ત્યાં ઘણી વખત એક બફર, હોય, તો ઝાકઝમાળ ઢગલો છે, અને અમે તે સીમાઓની પર અધિલેખિત થશે, તો પછી અમે કરશે એક ઢગલો બફર ઓવરફ્લો છે. અને આ અલબત્ત પહોંચની બહાર, તેઓ થોડી અલગ શોધી રહ્યાં છો. આ કમ્પાઈલર ખાસ છે દરેક શોધવા માર્ગો. પરંતુ એક બફર ઓવરફ્લો વધુ સામાન્ય છે હું વર્ણન કર્યું છે પ્રકાર, જે સ્ટેક બફર ઓવરફ્લો હતી. કે તમારા પ્રશ્નનો જવાબ નહોતી? મીઠી. કોઈ અન્ય પ્રશ્ન સંબંધિત ત્યાં હતા સ્ટેક અથવા ઢગલો માટે? અરે વાહ. વિદ્યાર્થી: હું તમારી પાસે મુક્ત શબ્દમાળાઓ છે ખબર તેઓ ઢગલો છો કારણ કે અને તમે મેમરી લીક કરવા નથી માંગતા. પરંતુ તમે વૈશ્વિક ચલો મુક્ત કરવા છે અને જેમ સામગ્રી? અથવા તેઓ આપોઆપ મુક્ત કરવામાં આવે છે? જેસન HIRSCHHORN: ગુડ પ્રશ્ન. તેથી cs50.h, અમે આ વસ્તુ બનાવવા માટે તમે શબ્દમાળા છે. એક શબ્દમાળા શું છે? વિધાર્થી ચાર સ્ટાર. જેસન HIRSCHHORN: એક કોલસો બનાવો સ્ટાર, એક નિર્દેશક એક અક્ષર માટે, એક નિર્દેશક માટે અક્ષરો પણ દર્શાવે છે. શબ્દમાળા કે શું છે. તેથી અમે તેને મુક્ત કરવાની જરૂર છે કારણ કે GetString, જે અમે ઘણો વપરાયેલ - શબ્દમાળા નામ GetString સમકક્ષ હોય છે - કે અમારા માટે પર અમુક મેમરી mallocs ઢગલો અને પછી માટે નિર્દેશક આપે છે કે પ્રથમ અક્ષર શબ્દમાળા ચાર રચે સ્ટાર. તેથી દેખીતી રીતે, તમે નથી તો તમારા શબ્દમાળાઓ કોઈપણ મફત લેખિત તમે અત્યાર સુધી કહેવાય છે કે, તમારી પાસે અમુક મેમરી લીક કરવામાં આવી. અલબત્ત અમે વિશે વાત કરી છે તે, તેથી કોઈએ માં મેળવેલ છે આમ માટે મુશ્કેલી. પરંતુ હા, આગળ જતાં. તમે GetString ફોન કરો ત્યારે તમે છો ઢગલો પર કેટલાક જગ્યા mallocing. અને તમે તે પર પાછળથી મફત કૉલ ન હોય તો શબ્દમાળા, તમે મેમરી છિદ્ર હોય છે. કે તમારા પ્રશ્નનો જવાબ? અરે વાહ વિધાર્થી તેથી તે કરવા માટે, અમે ઉપયોગ કરી શકું પરત પહેલાં મફત અધિકાર? જેમ, તક અંદર, હું માનું તો અમે અંદર, મુખ્ય પૂર્ણાંક, પસંદ, કહે છે તે અંદર છે કોડ કે જે અવકાશ સર્પાકાર કૌંસ, અધિકાર પહેલાં - તમે જાણો છો કે જ્યાં તમે છો સામાન્ય રીતે પરત મૂકો. તમે તે પહેલાં મુક્ત મૂકી છે? જેસન HIRSCHHORN: તેથી જો તમારી પાસે મુક્ત મૂકી શકો છો જો તમારી પાસે મુક્ત મૂકેલ ત્યાં. આ ગતિશીલ ફાળવવામાં આવે છે કારણ કે ચલો, તેઓ કરી શકે છે, કારણ કે ચોક્કસ પહોંચની બહાર રહેતા કાર્ય, જો તમે માં malloc કૉલ જો અલગ કાર્ય, ઉદાહરણ તરીકે, GetString, તમે મુખ્ય મુક્ત કૉલ કરી શકો છો. તમે તેને કહી કરવાની જરૂર નથી ચોક્કસ કાર્ય malloc કહી થયેલ છે. પરંતુ તમે તેને કહી જરૂર છે મુખ્ય વળતર પહેલાં. અને તે ખરેખર આધાર રાખે છે. તે તમને કે malloced શા પર આધાર રાખે છે પ્રથમ સ્થાને જગ્યા. કેટલાક લોકો કૉલ કરશે ખૂબ ઝડપથી મુક્ત. કેટલાક લોકો ત્યાં સુધી મફત કૉલ નહીં તેમના કાર્યક્રમ ઓવરને. અને તેઓ દ્વારા જઈશ અને મફત છે બધું. તે તમે malloc કહેવાય શા માટે પર આધાર રાખે છે. વિધાર્થી અને તમે શું કહે છે તમને GetString કહેવાય તો શું? તમે શું મફત કહેવું છો? જેસન HIRSCHHORN: તેથી માટે વાક્યરચના મફત ખાલી મુક્ત, ઓપન કૌંસ, બંધ છે કૌંસ, અને નિર્દેશક ના નામ પર. તેથી તમે શબ્દમાળા નામ લખો સમકક્ષ જો GetString, તમે અહીં નામ મૂકો. કે નિર્દેશક નું નામ છે. અને તે છે કે મેમરી મુક્ત જાણે છે. વિધાર્થી તે મેમરી મુક્ત કરે છે, તેથી જ્યારે નિર્દેશક હજુ પણ તે સ્થાન નિર્દેશ મેમરી છે? અથવા પણ છે કે ખાલી નિર્દેશક છે તે નિર્દેશ કરે છે. જેસન HIRSCHHORN: અમે તે પ્રયત્ન કરવો જોઇએ. અમે તેને કોડ જોઈએ. અમે જ્યારે પાછા આવો; કોડિંગ અને માતાનો તેને કોડ કરો. અને તમે જવાબ આકૃતિ કરવા માંગો છો કે કરવા માટે, તમે એ પણ કોડ કે આ સમય દરમિયાન. પરંતુ તે એક મહાન પ્રશ્ન છે. વિદ્યાર્થી: તે શક્ય છે પણ ટૂંક સમયમાં મફત કંઈક? તેથી તમે હજુ પણ તમારા કાર્યક્રમ માટે જરૂર છે, અને તમે તે મેમરી જગ્યા મુક્ત? જેસન HIRSCHHORN: હા. તે શક્ય છે, જો તમારી પાસે મુક્ત કંઈક અને પછી તમે ફરીથી વાપરવા માટે, તમે કરશે ભૂલ માં ચલાવો. તમે મુક્ત છે કારણ કે પરંતુ તે, તમે પર છે પછી કંઈક અને પછી તે કહે છે. જેથી પ્રોગ્રામર ભૂલ હતી. પરંતુ હા. તમે કે લખી શકે છે. કોઇ પ્રશ્નો - હા. વિધાર્થી જેથી તમે તેવું માનવામાં આવે છે, માત્ર આ પહેલાં સામાન્ય રીતે તેને મુક્ત કાર્યક્રમ તો તેનો અર્થ એ નથી, અંત થાય છે કાર્યક્રમ પૂર્ણ થાય છે અને તમે તેને મુક્ત નથી, કે મેમરી હજુ પણ ફાળવવામાં આવે છે? જેસન HIRSCHHORN: તમારા કાર્યક્રમ પૂર્ણ થાય તો અને પછી તમે કંઈક મુક્ત ભૂલશો કે મેમરી દરમ્યાન ફાળવવામાં આવ્યો હતો તમારા કાર્યક્રમ ના જીવનકાળ. તમારા કાર્યક્રમ સંપૂર્ણપણે બંધ કરે છે કે મેમરી નથી જઈ રહ્યા છે ત્યાં કાયમ રહે છે. કોમ્પ્યુટર જાણવા પૂરતી સ્માર્ટ છે કે કાર્યક્રમ બંધ કરે છે, તે આ મેમરી બધા દૂર મેળવવા જોઈએ કે કે કાર્યક્રમ સાથે સંકળાયેલા હતા. જો કે, તમે ચલાવો સાધનો છે શોધવા માટે એક કાર્યક્રમ પર, જો ત્યારે કાર્યક્રમ તમને ભૂલી ગયા છો સમાપ્ત થાય, કેટલાક મેમરી મુક્ત. અને આગામી સમસ્યા માટે જ્યાં સેટ તમે malloc ઉપયોગ કરીને અને ઉપયોગ કરી શકશો પોઇન્ટર, તમે આ ચાલી આવશે તે જોવા માટે તમારા કાર્યક્રમ પર કાર્યક્રમ, જ્યારે મુખ્ય વળતર, તમે કેટલાક હતી unfreed છોડી હતી કે વસ્તુઓ. તેથી તેઓ malloced રહેવા નથી જઈ રહ્યાં છો કાયમ તમારા કમ્પ્યુટર માં. એટલે કે, ઉડાઉ બની શકે છે કારણ કે ખૂબ જ ઝડપથી, કમ્પ્યુટર્સ મેમરી બહાર ચાલે છે. પરંતુ તેઓ તમારા અંત સુધી ચાલે તો કાર્યક્રમ અને તેઓ મુક્ત કરી રહ્યાં છો અને તમારા કાર્યક્રમ કે હજુ પણ એક સમસ્યા છે, બહાર નીકળે છે આ સાધન મદદ કરશે તમે સંબોધવા. વિધાર્થી Valgrind છે? જેસન HIRSCHHORN: તે છે Valgrind કહેવાય. અને જો તમે પ્રયત્ન કરીશું - વિદ્યાર્થી: પણ આપણે જાણીએ છીએ કરવાની જરૂર નથી કે ક્વિઝ માટે, જોકે? હું તેનો અર્થ, તે વિશે વાત કરી હતી વ્યાખ્યાન થોડો. જેસન HIRSCHHORN: તેથી Valgrind કે સાધન નામ છે. તે કરે છે તે જાણવાથી છે ક્વિઝ માટે પૂરતી. પરંતુ તમે પર હજુ સુધી ઉપયોગ કર્યો નથી તમારા અમે થયું નથી કારણ કે સમસ્યા સેટ બાહ્ય રીતે કામ કર્યું છે કે સમસ્યા સમૂહ malloc સાથે અથવા તમે malloc મદદથી. તેથી તમે હજુ સુધી Valgrind ઉપયોગ કર્યો નથી. પરંતુ તમે તેને વહેલા ઉપયોગ કરશે બદલે પાછળથી કરતાં. વિદ્યાર્થી: તમે પુનરાવર્તન કરી શકો છો શું Valgrind છે? જેસન HIRSCHHORN: માફ કરશો? વિદ્યાર્થી: તમે શું પુનરાવર્તન કરી શકો છો Valgring હેતુ છે? જેસન HIRSCHHORN: Valgrind નામ છે - GDB, તમે તમારા કાર્યક્રમ ડિબગ મદદ કરે છે જેમ Valgrind તમે બહાર આકૃતિ મદદ મળતી હોય તો વસ્તુઓ મુક્ત કરવામાં આવી નથી તમારા કાર્યક્રમ બંધ કરે છે. જેથી તમે તમારા કાર્યક્રમ પર ચલાવવા પડશે. અને તમારા કાર્યક્રમ બંધ થાય છે, અને તે કહેવું પડશે તમારા કાર્યક્રમ malloc આ ઘણા કહેવાય આ ઘણા બાઇટ્સ માટે વખત, અને તમે માત્ર આ જ ઘણી વખત મફત છે. અને તેથી તમે આ ઘણા બાઇટ્સ બાકી મુક્ત વિના. કે પછી તમે બધું મુક્ત કર્યા છે કહેવું પડશે. ગુડ કામ. વિધાર્થી બરાબર. અને તે Valgring કહેવાય છે? જેસન HIRSCHHORN: વી એ એલ જી આર આઇ એન ડી. વિધાર્થી પોઇન્ટર વિશે પ્રશ્ન. તેથી જો તમે n એ સ્ટાર છે કહે છે X કંઈક સમકક્ષ હોય છે. એટલે કે, તમે આપી રહ્યા છીએ, ગમે જેટલી જ થાય છે ત્યાં, શું અંદર મૂકવામાં આવી રહી છે કે છે શું X પોઇન્ટ છે, અથવા x ની નિર્દેશક? જેસન HIRSCHHORN: તમે કરી શકો છો પ્રશ્ન પુનરાવર્તન? તમે તેને કહે છે, જ્યારે અમે તેને મળે છે? વિધાર્થી ક્વિઝ માં, વાસ્તવમાં, આ જો તમારે અમારી મોકલવામાં, તે, ચાર સમાન હતું સ્ટાર સત્ય હક, CS50 ખડકો જેટલી જ થાય છે? તેથી તેનો અર્થ એ નથી કે તે CS50 ખડકો સત્ય પોઇન્ટ છે શું છે? જેસન HIRSCHHORN: તેથી તમે વાત કરી રહ્યા છીએ એક શબ્દમાળા માં ચાર રચે સ્ટાર વિશે, કેવી રીતે કે કામ કરે છે? અરે વાહ. બરાબર. અહીં પર આ દોરીએ. [બાજુ રીતે વાત] જેસન HIRSCHHORN: તેથી આ ચલ પ્રકાર ઘરનાં પરચૂરણ કામો તારાનું પ્રયત્ન રહ્યું છે. ચલ કેવી રીતે મોટી છે પ્રકાર ઘરનાં પરચૂરણ કામો તારાનું? કેટલી બાઇટ્સ? વિદ્યાર્થી: ચાર. જેસન HIRSCHHORN: તે ચાર બાઇટ્સ છે. ચલ કેટલી અધિકારો છે પ્રકાર પૂર્ણાંક તારાનું? વિદ્યાર્થી: ચાર. જેસન HIRSCHHORN ચાર બાઇટ્સ. તે એક નિર્દેશક છે, પછી તે હંમેશા છે ચાર બાઇટ્સ, કારણ કે પોઇન્ટર, તેમના કિંમત મેમરી સરનામું છે. અને CS50 પર મેમરી સરનામા સાધન ચાર બાઇટ્સ લાંબા છે. તેથી અમે GetString, અથવા જ્યારે જ્યારે આપણે કહી કહે છે, stringname પછી સમકક્ષ હોય છે, અને બે અવતરણચિહ્નો શબ્દમાળા મૂકી, અમે મૂકી છે - સાથે સાથે, તે થોડો અલગ છે. અમે ઉદાહરણ તરીકે GetString કરવું પડશે. અથવા ઘરનાં પરચૂરણ કામો સ્ટાર કંઈક શબ્દમાળા સમકક્ષ હોય છે. માફ કરશો, મને ઉદાહરણ આપવા કે તમે વાંચી? વિધાર્થી ઘરનાં પરચૂરણ કામો સ્ટાર સત્ય જેટલી જ થાય છે ડબલ અવતરણ "CS50 ખડકો". જેસન HIRSCHHORN: તેથી આ સ્ટાર, આ અમે આ ચલ x કહી શકશો અમારા સામાન્ય હેતુ. અમે એક્સ કહેવાય ચલ બનાવી છે. તેનો પ્રકાર ઘરનાં પરચૂરણ કામો સ્ટાર છે. તે શ્રેણી માટે નિર્દેશક છે અક્ષરો. જેથી નીચે અહીં - તેથી આ કેવી રીતે આ રીતે છે મેમરી કામ કરે છે. આ મેમરી સરનામા સંગ્રહિત કરશે. તે મેમરી સરનામું સંગ્રહ કરશે એરે પ્રથમ અક્ષર. અને પછી જ્યારે તમે અનુસરી નિર્દેશક, તમે છો પ્રથમ અક્ષર છે. અને તમારા જેવા આ વસ્તુ વાંચી રહ્યા છો શબ્દમાળા તમારા કમ્પ્યુટર સ્માર્ટ છે જાણવા માટે પૂરતી છે, આ સમગ્ર બાબત વાંચો તે એક તીવ્ર નકારાત્મક પ્રતિક્રિયા 0 થી થાય ત્યાં સુધી. પરંતુ તમે તે એક અક્ષર વાંચી રહ્યા છો એક સમયે, જેથી તમે વારો કરી રહ્યાં છો આ શબ્દમાળા, તો પછી તમે માત્ર એક વાંચી હશે એક સમયે પાત્ર તમને વિચાર સુધી બેકસ્લેશ 0. તે જવાબ ન હોઈ શકે છે તમારા પ્રશ્ન છે. વિદ્યાર્થી: અરે વાહ, પરંતુ તમે ન હોય malloced કે જગ્યા હજુ સુધી કે નિર્દેશક માટે. જેસન HIRSCHHORN: તેથી હું ખૂબ ખાતરી છે કે નથી બરાબર શું તમે જોઈ રહ્યાં છો, હું ક્વિઝ કરી નથી, કારણ કે. કે જે ઉપયોગી હશે તેવું માનવામાં આવ્યું અન્ય ટીએફ થી સ્ત્રોત. તમે પર શબ્દમાળા બનાવી રહ્યા હોય ગંજી અથવા સ્થાનિક ચલ, તે પડશે માત્ર ખર્ચ એરે બદલે કરી માટે પોઇન્ટ સામાન્ય રીતે ચાર રચે સ્ટાર અન્ય શબ્દમાળા. પરંતુ મને ખબર નથી. કે અન્ય માટે નિર્દેશક હોઈ શકે છે સ્ટેક પર શબ્દમાળા પણ. અરે વાહ. વિધાર્થી હું તમને જરૂર છે કે જે જાણે છે નિર્દેશક છે મેમરીને ફાળવવા અંદર જાહેર રહ્યું અન્ય કાર્ય છે. તમે તેને જો તે જ વસ્તુ કરવા માટે જરૂરી છે મુખ્ય અંદર જાહેર કરવામાં, તમે મુખ્ય ની અંદર ઉપયોગ કરી રહ્યાં છો? જેસન HIRSCHHORN: તેથી હા. તમે કોઈપણ માટે નિર્દેશક જાહેર કરી શકો છો મેમરીમાં મેમરી સરનામું. તે સ્થાનિક ની મેમરી સરનામું હોઈ શકે છે ચલ, ઘણી વખત નજર છતાં, લોકો મેમરી સરનામા જાહેર નથી તેઓ જાઓ, કારણ કે સ્થાનિક ચલો માટે તે કાર્ય આપે દૂર જાય, જે અમે સામાન્ય વસ્તુઓ malloc શા માટે છે. પરંતુ હા, તમે એક નિર્દેશક જાહેર કરી શકે છે અન્ય સ્થાનિક ચલ છે. તે માત્ર સામાન્ય રીતે કરવામાં આવે છે. પરંતુ હું તે પર એક નજર કરી શકો છો વર્ગ પછી ચોક્કસ વસ્તુ. અરે વાહ. વિદ્યાર્થી: હું આ પ્રકારની છે કહેવામાં આવ્યું છે તે. તે પ્રારંભ કરી શકાય વિચિત્ર લાગતું નથી નથી એક તરીકે નિર્દેશક સરનામું પરંતુ શું નીચેની જેવી લાગે છે. આ CS50 છે શું અંદર છે એવું લાગે છે આ વસ્તુ પર ધ્યાન અને રહી નહિં કે વાસ્તવિક આંકડાના, અધિકાર? જેસન HIRSCHHORN: તેથી તે છે કેસ નથી, છે. તે ચાલી રહ્યું છે તે નથી. તમે એક કોલસો બનાવો સ્ટાર જાહેર કરે છે ત્યારે, તે મેમરી સરનામું છે. પોઇન્ટર મેમરી સરનામાંઓ છે કંઈક બીજું માટે નિર્દેશ કરતી હશે. બીજું કે કંઈક પર હોઇ શકે છે સ્ટેક, પરંતુ લગભગ હંમેશા પર છે અમે તેનો ઉપયોગ જોશો રીતે ઢગલો. પરંતુ stringname ડબલ ભાવ જેટલી જ થાય છે "GetString" અમે તે જોઈ શકે છે અને અમે કે દ્વારા જોવા અને તેને કોડ છે. GetString શબ્દમાળા સાચવવામાં આવી નથી કે ચલ, અથવા જે શબ્દમાળા નામ કે સાચવવામાં આવી નથી છે ચલ, તે છે કારણ કે કેવી રીતે પોઇન્ટર કામ કરે છે. કે અર્થમાં છે? વિધાર્થી યાહ. જેસન HIRSCHHORN: બરાબર. આસ્થાપૂર્વક, કે ન હતી કોઈને પણ ગૂંચવણમાં. તે તો, અમે તેને ફરીથી જોવા કરી શકો છો થોડી, અમે ખરેખર જઈ રહ્યાં છો, કારણ કે કે આસ્થાપૂર્વક કરશે કંઈક કોડ માટે શબ્દમાળાઓ સાથે કામ કરે છે અને તમને લાગે મદદ તેમની સાથે વધુ આરામદાયક. આ સાથે સંબંધિત અન્ય કોઇ પ્રશ્નો વિષયો અથવા અન્ય વિષયો કે હું પાછા મૂકવા પડશે? અને - હમણાં. હા, એલન. ALDEN: તેથી આ સંપૂર્ણપણે બિનસંબંધિત છે, પરંતુ અમે માત્ર જઈ શકે છે ખરેખર ઝડપથી અમે જાણવાની જરૂર છે 32 અને વચ્ચે તફાવત વિશે મશીન 64-bit? જેસન HIRSCHHORN: હા. તેથી 32 બિટ્સ કેટલા બાઇટ્સ છે? ALDEN: તે ચાર બાઇટ્સ છે. જેસન HIRSCHHORN: તે ચાર બાઇટ્સ છે. અને 64 બીટ્સ કેટલા બાઇટ્સ છે? વિધાર્થી આઠ. જેસન HIRSCHHORN: આઠ બાઇટ્સ. તેથી ફરી, આઠ બિટ્સ એક બાઈટ છે. તમારા CS50 સાધન છે એક મશીન 32-bit. તેથી મેમરી સરનામા છે લાંબા ચાર બાઇટ્સ. 2 32 માટે છે મેમરી સરનામા. 0 32 બાદ 1 થી 2. અને હું હકારાત્મક નથી, પરંતુ તે છે તમને જરૂરી હોય તે કદાચ અવકાશ , એક મશીન 32-bit માટે ખબર છે કે મેમરી સરનામા,, ફરી, ચાર બાઇટ્સ લાંબા છે અને તે મહત્તમ રકમ છે મેમરી સરનામા કુલ. પણ, માહિતી પ્રકાર - આ કંઈક હોઈ શકે છે સાથે સાથે નોંધ્યું છે કે વર્થ છે. એક માહિતી પ્રકાર માપ પર આધાર રાખે છે તમારી સાથે કામ કરી રહ્યા છીએ મશીન. તેથી ચાર રચે છે, એક જ અક્ષર છે, કેવી રીતે છે અમારા CS50 સાધન પર ઘણા બાઇટ્સ? એક બાઇટ. અને તે ખરેખર એક બાઈટ તરીકે છે સાથે સાથે 64-bit મશીન પર. અને સૌથી ડેટા પ્રકારો જ નંબર છે બંને મશીનો પર બાઇટ્સ. પરંતુ કેટલાક ડેટા પ્રકારો અલગ હશે બંને મશીનો પર. જેથી સંભવિત હશે તમે જાણવા જરૂર જ વસ્તુ. પરંતુ તે પણ છે કે, મને લાગે છે, સીમાડાં બહાર છે - જો તમે પાછા જોવા હું લગભગ હકારાત્મક છું જૂના અંગેની ક્વિઝ પર, તે કહે છે, માટે ધારે તમે ઉપયોગ કરી રહ્યાં છો સમસ્યાઓ કોડિંગ એક મશીન 32-bit. પરંતુ તે સાથે જાઓ, છે જો તમને રસ છો કેસ, છે એ જ છે કે ડેટા પ્રકારો બધા મશીનો પર માપ. તમે કંઈક જોવા મળે છે, તો uint32_t, તમે અથવા કરી શકે છે જોઈ છે કે નહીં. કે માહિતી પ્રકાર છે. તે 32 બિટ્સ કોઈ બાબત છે, કહી રહ્યાં છે આ શું મશીન પર છે. તેથી લોકો પોર્ટેબલ લખે છે ત્યારે કોડ છે, તેઓ કદાચ ints ઉપયોગ કરશે નહીં. તેઓ તેના બદલે આ અન્ય માહિતી ઉપયોગ કરશો તેઓ જાણે છે કે પ્રકારના જ હશે દરેક એક મશીન પર માપ. મધુ. મધુ: હું વિશે એક પ્રશ્ન હતો સંકલન પ્રક્રિયા. તેથી તમે ઉપયોગ કરે છે એક કાર્યક્રમ લખી રહ્યાં CS50 અથવા કંઈક જેવા પુસ્તકાલય જેમ, મને ખબર છે કે તે લાઈબ્રેરી , અમુક બિંદુએ, પ્રયત્ન છે સંકલિત અને સાઇન કડી પરંતુ કેટલી કે દરમિયાન થાય છે તમારા કાર્યક્રમ સંકલન? કે પુસ્તકાલય પ્રક્રિયા કયા ભાગ તમે ત્યારે થાય છે જ્યારે તમારા પોતાના કાર્યક્રમ સંકલન? જેસન HIRSCHHORN: તેથી આપણે પર જાઓ આ પ્રક્રિયા સામાન્ય રીતે પગલાંઓ. તમે તમારા. ફાઈલ લખો. તમારા. સી ફાઈલમાં, તમે # સમાવેશ થાય છે તમારા હેડર પુસ્તકાલયો, ઉદાહરણ તરીકે, cs50.h. તીવ્ર સમાવેશ થાય છે શું કરે છે વાક્ય તમારા કાર્યક્રમ માટે છે? Akchar. AKCHAR: તે ના પ્રોટોટાઇપ ઉમેરે હેડર ના કાર્યો પુસ્તકાલયો માં ફાઈલો. જેસન HIRSCHHORN: ચોક્કસ. તે તે કાર્ય પ્રોટોટાઇપ ઉમેરે તમારો કોડ છે. તમારો કોડ કમ્પાઈલ કરવામાં આવી રહી છે તેથી જ્યારે પ્રારંભિક તબક્કામાં, પણ કમ્પાઇલર જાણે આ વિધેયોને ખરેખર અસ્તિત્વ ધરાવે છે, અને તે કે ક્યાંક તેઓ નિર્ધારિત કરવામાં આવી છે. આ. એચ ફાઇલો સમાવેશ થતો નથી એ આ કાર્યો માટે વ્યાખ્યાઓ કે કેવી રીતે તેઓ ખરેખર કામ કરે છે. Cs50.h માત્ર કહે છે કે કંઈક સમાવેશ થાય છે GetString એક વાસ્તવિક બાબત એ છે કે થઇ શકે છે. અને standardio.h printf છે થાય છે કે જે વાસ્તવિક વસ્તુ. તેથી આ સાથે તમારા સી ઓનલાઇન. હેડર ફાઇલ કેટલાક માં ચાલુ નહીં મશીન વાંચી શકાય કોડ છે, જે છેવટે દ્વિસંગી માં ચાલુ નહીં કોડ છે, 0 અને 1 ની. અને તે કોડ કે છેવટે ચલાવવામાં નહીં. -L CS50 વાક્ય - ઉદાહરણ તરીકે, તમે રણકાર લખી રહ્યાં છે - અને પછી તમે સમાવેશ થાય છે-L CS50, આપ લોગ કે પ્રકાર અને તમે જુઓ કે. તમે લખી છે, તો તમે અહીં તે લીટી જુઓ. અને અમે એક બીજા જોશો કે જ્યારે અમે કોડ કે પછી જ્યારે અમે કોડ છે. પરંતુ જે l CS50 વાક્ય કંઈક કરે છે કરતાં થોડી અલગ એ # cs50.h. સમાવેશ થાય છે જે l CS50 વાક્ય શું કરે છે? Avi? આવી: હું જોડાયેલી છે કહે છે કે માંગો છો કાર્ય માટે લાઈબ્રેરી પાંચ. સ્પષ્ટ કરો, જેમ કે ફોન કરો. જેસન HIRSCHHORN: તેથી ખૂબ જ બંધ કરો, સ્પોટ પર ન હોય. -L CS50 બાઈનરી ફાઈલ લે છે અને તમારા બાઈનરી ફાઈલ સાથે ભળી જાય છે. તેથી cs50.h, દેવાનો કોઈ મતલબ છે દરેક બાઈનરી સી ભાષામાંથી cs50.h તે ઉપયોગ કરવામાં આવી રહ્યો છે એક સમય. એટલે કે, આ બોલ પર કોઈ છે કે કારણ કે સમય ઘણો કચરો છે. તેથી તે પહેલાથી જ લખાઈ છે અને એક્ઝિક્યુટેબલ પરિણમ્યો. અને હવે તે મર્જ કરી રહ્યું છે અંતે તમે તમારી ફાઇલ સાથે. તેથી તે 1 અને 0 ના જવું છે તમારા મુદ્દાઓ સાથે મર્જ કરવા અને અંતે 0. તેથી હવે તમે ખરેખર વાસ્તવિક પડશે 1 અને 0 ના કેવી રીતે GetString વ્યાખ્યાયિત કે, ઉદાહરણ તરીકે,, કામ કરે છે, કે કેવી રીતે printf ઉદાહરણ તરીકે, કામ કરે છે. વધુ માહિતી માટે, ત્યાં એક Nate કે આપે છે ટૂંકા કમ્પાઇલર્સ તમે તે જાય ચકાસણી કરવી જોઈએ આ પગલાંઓ મારફતે. પરંતુ - હા. વિધાર્થી તેઓ હંમેશા હોય છે સ્પષ્ટ કરો. તેઓ ગ્રંથાલયનો સ્વરૂપમાં હોય ત્યારે, જેમ - કડી, મર્જ કરવા માટે તૈયાર તેઓ દ્વિસંગી કોડ છો? જેસન HIRSCHHORN: બરાબર. શું - વિધાર્થી છે કે હંમેશા માટે કેસ પુસ્તકાલયો તમે તેમને લિંક છે? જેસન HIRSCHHORN: હા. છે. એ હશે કે જે ફાઇલો, છે પણ હશે જે મશીન કોડ છે, તમને વિસ્મૃત. તમે તે અંગે ચિંતા કરવાની જરૂર નથી. પરંતુ સામાન્ય રીતે, હા, તેઓ પડશે ઓ જવા માટે તૈયાર ફાઈલોમાં. છે. વિધાર્થી તેથી તમે જહાજ જ્યારે લાઇબ્રેરી, તમે માત્ર જહાજ પાંચ. એચ અને. કંઈપણ? તમે. સી અથવા. એ જહાજ નથી. જેસન HIRSCHHORN: તેથી - અને આ તો પણ આ ટૂંકમાં છે આ જાણકારી આગામી કરી રહ્યું છે થોડી ઝડપથી. પરંતુ સંગ્રાહકો પર ટૂંકા આ વિશે વાત કરે છે એ જ પ્રમાણે. તમારે લાઇબ્રેરી જહાજ છે, જો તમે જહાજ પાંચ. એચ, હેડર ફાઈલ છે, તે કાર્ય પ્રોટોટાઇપ, અને 1 ની અને 0 છે, કે જો તમારી પાસે આપવા માટે જરૂર છે. તમે આપી જરૂર નથી કેવી રીતે કાર્ય. ફાઈલ, કામ કરે છે. કારણ કે તાત્વિક મુદ્દો, અથવા API નો નિર્દેશ આ એસપીએલ પર બિંદુ, સ્ટેનફોર્ડ પોર્ટેબલ લાઈબ્રેરી, તે છે તમે ચિંતા ન કરવા માટે કેવી રીતે નવા GRect, કામ કરે છે, કે કેવી રીતે કામ કરે છે ખસેડો કે કેવી રીતે કામ કરે છે ઉમેરો. તમે જાણવા જરૂર છે કે ઉમેરો તમે કરી શકો છો કે જે કાર્ય છે વાપરવા માટે, અને તે કરે છે. તેથી જો તમે ખરેખર જાણવાની જરૂર નથી કેવી રીતે તે સી તમે લખાયેલ છે માત્ર જરૂર જાણો છો, અહીં કાર્ય કરે છે, તેઓ શું કરવા માટે, અને અહીં 1 અને 0 ના છે તમે ખરેખર તેમને વાપરવા માંગતા હોય. કૂલ. કમ્પાઇલર્સ કોઇ પ્રશ્નો અથવા બોર્ડ પર અન્ય વિષયો? વિદ્યાર્થી: હું એક પ્રશ્ન છે ફરી યાદ આવવું કાર્યો અમલીકરણ. રિકર્ઝન વિશે પ્રશ્ન. હું આવી છે કે જે એક લાગણી હતી. તેથી આપણે ઝડપથી મારફતે જાઓ ચોક્કસ સાથે રિકર્ઝન ઉદાહરણ તરીકે, એક કારણદર્શી કાર્ય કરે છે. આ એક ઉદાહરણ છે કારણ કે ઘણી વખત આવે છે અથવા તેનો ઉપયોગ થાય છે રિકર્ઝન સમજાવે. તેથી "4" 4 કારણદર્શી તરીકે વાંચવામાં આવે છે. અને 4 કારણદર્શી શું અર્થ છે? કે શું થાય છે? તમે કેવી રીતે 4 કારણદર્શી ગણતરી નથી? 4 વખત 3 વખત 2 વખત 1. 4 કારણદર્શી લખી તેથી બીજી રીતે આ લખી છે. 4 વખત 3 કારણદર્શી. 3 કારણદર્શી છે 3 વખત 2 વખત 1. તેથી 4 વખત 3 કારણદર્શી 4 છે વખત 3 વખત 2 વખત 1. કારણદર્શી એક મહાન છે શા માટે છે રિકર્ઝન માટે ઉમેદવાર છે, તે છે, કારણ કે કે કંઈક છે કે સ્પષ્ટ એક પર ઉપર અને ઉપર અને ઉપર થાય છે વસ્તુઓ નાના નંબર સુધી તમે ઓવરને પહોંચે છે. તમે 1 પહોંચે છે, 1 કારણદર્શી 1 છે. તમે ખૂબ આગળ જઇ શકો છો. 0 કારણદર્શી પણ એ 1 તરીકે વ્યાખ્યાયિત કરવામાં આવે છે. તમે 1 અથવા 0 મેળવવા તેથી, જ્યારે તમે છો અંતે, અને તમે કરી શકો છો પાછા જઈને શરૂ કરો. અમે ફરી યાદ આવવું લખવા માગતા હતા તેથી જો એક કારણદર્શી ગણતરી કાર્ય, અમે કેટલાક લખી રહ્યા છીએ હવે માટે સ્યુડોકોડનો. અમે તે સ્યુડોકોડનો લખવા પહેલાં - હું તમને ગાય્ઝ બે મિનિટ આપવા પડશે સ્યુડો કોડ લખવા અથવા ફક્ત વિચારો તે વિશે - દર બે વસ્તુઓ છે ફરી યાદ આવવું કાર્ય જરૂર છે. તે બે વસ્તુઓ શું છે? જેક: તે પોતે કહી છે. જેસન HIRSCHHORN: નુહ? ઓહ, જેક. આગળ વધો. જેક: તે પોતે કહી છે. જેસન HIRSCHHORN: તેથી ફરી યાદ આવવું કાર્ય, ફરી યાદ આવવું કોલ જરૂર એક પોતે કૉલ કરો. કે એક છે. અને અન્ય વસ્તુ શું છે? જેક: એક આધાર કેસ. જેસન HIRSCHHORN: એક આધાર કેસ. એક આધાર કેસ અમે ક્યારે બંધ અહીં છે, છે. તેથી તમારા કાર્ય કહેવાય નહીં. આધાર કેસ પ્રથમ આવે છે. તમે ઓવરને અંતે છો ખબર કરવા માંગો છો. અને તમે ઓવરને અંતે તમે જાણતા ન હો તો તમારા ફરી યાદ આવવું કૉલ કરવા. અને તમે, ફરીથી આ કાર્ય મારફતે જાઓ ફરી તમારી આધાર કેસ તપાસો. તમે ઓવરને નથી, તમે કરી અન્ય ફરી યાદ આવવું કોલ, વગેરે એટ છે, વગેરે એટ. કે શા માટે ફરી યાદ આવવું કાર્યો હંમેશા તે આધાર કેસો અને તે જરૂર ફરી યાદ આવવું કોલ્સ. જો તમે ફરી યાદ આવવું કોલ ન હોય તો, તે ફરી યાદ આવવું કાર્ય નથી. તમે આધાર કેસ ન હતી, તો તમે કાયમ જઈ શકે છે અને આ બોલ પર કોઈ અંત હશે. અને આધાર કેસ હંમેશા પ્રથમ આવે છે, તમે હંમેશા ચેક કરવા માંગો છો કારણ કે તમે પ્રથમ ઓવરને અંતે છો. અમે કેટલાક સ્યુડોકોડનો તેથી તે પહેલાં, શા માટે આપે વિચાર કરવા એક મિનિટ ન લો કેવી રીતે ફરી યાદ આવવું કારણદર્શી કાર્ય લખી શકાય છે? પણ, તમે શું કરી રહ્યા હોય તેટલી, લેખન કાગળ એક શીટ પર બહાર છે તમે જઈ રહ્યાં છો કાલે ક્વિઝ પર કામ કરે છે. જેથી બનાવવા માટે કદાચ સારી પ્રથા ખાતરી કરો કે તમે લખી રહ્યાં FIPS એ કાગળ શીટ પર નીચે - અથવા તમે આ કરી શકો છો. આ સેમિકોલન્સ છે જ્યાં તમે જાણો છો. તમે આ વાક્યરચના યાદ કરે છે. તમારી પાસે સમક્ષ રજુ કરવાનો પ્રયત્ન નથી કારણ કે એક કમ્પાઇલર તમે ભૂલ કરી જણાવો. પણ, તે રેખાઓ, આવતી કાલે, સાથે જ્યારે તમે જો તમે સમસ્યાઓ કોડિંગ છે વખત આવ્યા, અથવા તમે ખૂબ જ છો તમે માનવામાં કરી રહ્યાં છો કેવી રીતે ભેળસેળ સી માં ખાસ વાત લખી છે, તે કૃત્રિમ કોડ લખવા માટે તમે ને માટે આવશ્યક હોવું કરશે અથવા એ જ ટિપ્પણીઓ લખો. એક માટે આંશિક ક્રેડિટ કારણ કે ત્યાં ક્વિઝ પર પ્રશ્નો ઘણો. તેથી જો તમે આવ્યા, અથવા થઈ શકે છે માત્ર ભેળસેળ થઈ શકે છે. ટિપ્પણીઓ અથવા કૃત્રિમ કોડ લેખન ઘણી વખત રીતે છે કે તમે આંશિક ક્રેડિટ મેળવી શકો છો. જેથી કંઈક છોડી નથી ક્વિઝ પર ખાલી છે. માટે આ બોલ પર કોઈ દંડ છે સાઇન વસ્તુઓ મૂકી હકીકતમાં, કૃત્રિમ કોડ માં મૂકી અથવા ટિપ્પણીઓ grader મદદ કરશે તમે ખરેખર જાણો છો જો આકૃતિ શું તમે કદાચ એવોર્ડ વિશે વાત છે, અને કરી રહ્યાં છો તમે તે માટે કેટલાક આંશિક ક્રેડિટ. પણ તે રેખાઓ, સ્પષ્ટ રીતે લખો. અમે ખરેખર તમે લખી રહ્યાં નથી કરી શકે છે તે તો, અમે તમને કહી રહ્યા નથી કરી રહ્યાં છો આંકડો મધરાત ખાતે આવતી કાલે તમે લખ્યું છે તે. અમે હમણાં જ પોઇન્ટ બોલ લેવા જઈ રહ્યાં છો. તેથી અમે બદલે સાંભળવા શકો છો, અથવા સ્પષ્ટ રીતે લખો, અમે તમને લખ્યું વાંચી શકે છે. અને તે બે વાક્યો કહે છે, એક ફકરો લખો નહિં. સૂચનાઓનું પાલન કરો. સ્પષ્ટ રીતે લખો. અને તે ટિપ્પણીઓ લખી અથવા પ્રશ્નો માટે સ્યુડોકોડનો કે કરી શકે એવોર્ડ આંશિક ક્રેડિટ. ઠીક છે, માતાનો કારણદર્શી જાઓ. તેથી અમે એક કાર્ય કારણદર્શી છે. હું ખરેખર સી માં આ લખી હતી, તો શું હું નામ પહેલાં મૂકવામાં જરૂર છે કાર્ય? પરત પ્રકાર, એમાં જે, કેસ, અમે તેને પૂર્ણાંક આપવા પડશે. અને પછી સર્પાકાર કૌંસ અંદર છે તે માટે આ સર્પાકાર કૌંસ અંદર જાય છે એક કાર્ય? વિદ્યાર્થી: દલીલ પ્રકાર. જેસન HIRSCHHORN: તેની દલીલો. તેથી કારણદર્શી કદાચ એક દલીલ લે છે. તે કદાચ માત્ર એક દલીલ ન કરશો. અને અમે તેને લેવા પડશે કહેવું પડશે પૂર્ણાંક એક્સ કહેવાય છે. અને ફરી, તે પ્રોટોટાઇપ ના લખી ત્યારે એક કાર્ય અથવા કાર્ય લખી , તો તમે તેને વ્યાખ્યાયિત પહેલાં તમારા કોડમાં ડેટા પ્રકાર અને નામ લખો માત્ર તે કાર્ય માટે કે ચલ. તેથી જો તમે આ કેટલાક નંબર પસાર કરી શકો છો કાર્ય, તે એક્સ તરીકે ઓળખવામાં આવશે આંતરિક. અમે અમારા કારણદર્શી કાર્ય છે. અમે બે વસ્તુઓ, એક આધાર કેસ જરૂર અને ફરી યાદ આવવું કોલ. કારણદર્શી માટે આધાર કેસ શું છે? તેને લખ્યું હતું અને જે નથી જે સમબડી હજુ સુધી બોલાય, આધાર છે કારણદર્શી માટે કેસ? વિદ્યાર્થી: R ઓછી છે 2 કરતાં, 1 આવો. જેસન HIRSCHHORN: R છે 2 કરતાં ઓછી છે, 1 આવો. હું ગમે છે, કારણ કે 0 અને 1 ધ્યાન રાખે છે. તેથી અમે એક્સ <2 કરવું 1 પરત મળશે. અમે વિચાર તો, 0 પસાર કરો તો 1 પસાર, આ કાર્ય કરશે તરત જ 1 આવો. અમે કેટલાક નંબર વધારે પસાર કરો તો કરતાં અથવા 2 બરાબર, અમે રહ્યા છીએ અમારા ફરી યાદ આવવું કોલ છે. અને તેથી કેવી રીતે કામ કરશે? કરી શકો છો આ કામ કર્યું કોઈ બીજા જે હજુ સુધી બોલાય છે મને આપી આ કાર્ય માટે ફરી યાદ આવવું કોલ સ્યુડોકોડનો છે? અમે સંખ્યાબંધ એક્સ પસાર કરો તો અને તે માટે 2 કરતાં વધારે છે, શું અમે શું કરવા માંગો છો? અમે પણ એક ઉદાહરણ પર હોય તમને સંકેત આપી શકે છે બાજુ. વિધાર્થી એક્સ વખત કૉલ X ઓછા 1 ના કારણદર્શી? જેસન HIRSCHHORN: યોગ્ય બરાબર. અમે એક્સ વખત પાછા જઈ રહ્યાં છો X ઓછા 1 ના કારણદર્શી. અને, હું લખ્યું છે, તેમ છતાં તે મૂળભૂત રીતે, શું તમે ઇંગલિશ માં જણાવ્યું હતું કે, આ કારણદર્શી કાર્ય ફરીથી કહેવાય આવશે. તે એક્સ 1 બાદ પર ચલાવવા પડશે. કેટલાક પૂર્ણાંક સાથે પરત, અને પડશે પછી તે આ બે વધવું પડશે તેની સાથે, અને તે કિંમત હશે આ કહેવાય ગમે પરત કારણદર્શી કાર્ય, જે શક્તિ અન્ય ઉદાહરણ હોઈ આ કારણદર્શી કાર્ય કરે છે. જેથી ફરી યાદ આવવું એક ઉદાહરણ છે કાર્ય, ખૂબ જ સરળ ફરી યાદ આવવું કાર્ય કરે છે. પરંતુ તેમાંના મોટા ભાગના આ જેવા હશે. તમે એક સારા ફરી યાદ આવવું માંગો છો ક્વિઝ માટે પડકાર, કોડિંગ પ્રયાસ દ્વિસંગી શોધ પુનરાવર્તિત. કારણ કે તમારા માટે દ્વિસંગી શોધ ન હોય તો સમસ્યા ત્રણ સેટ, તો તમે કદાચ તે કર્યું iteratively જ્યારે લૂપ છે. પરંતુ તે પણ લખી શકાય છે પુનરાવર્તિત. તમે તમારી પોતાની લખી જરૂર જઈ રહ્યાં છો દે છે કે અલગ કાર્ય અલગ આદેશ વાક્ય દલીલો - અથવા નથી, આદેશ વાક્ય દલીલો, કેટલાક અલગ માત્ર નિયમિત દલીલો. પરંતુ તમે બાઈનરી શોધ લખી શકે છે પુનરાવર્તિત એ જ પ્રમાણે. વિધાર્થી તેથી તમે પણ હોય શકે છે, તેના બદલે એક્સ 1 બાદ, તમે પણ એક્સ ઓછા હોય શકે બાદ, અથવા તમે કરી શકે છે લેખિત બાદ બાદ એક્સ. તમે માત્ર ખરેખર ઝડપથી શા માટે સમજાવે છે તે અલગ વસ્તુઓ છે, તફાવત વચ્ચે શું છે જેમ X બાદ બાદ અને બાદ બાદ એક્સ? જેસન HIRSCHHORN: ના, હું નથી કે જાય રહ્યું. પરંતુ હું પછી તે વિશે તમે વાત કરશે વર્ગ. X બાદ બાદ, બાદ બાદ એક્સ 1 દ્વારા એક્સ હ્રાસ. પરંતુ તેઓ થોડી અલગ કામ કરે છે. પરંતુ હું તે જાય નહિં માંગો. રિકર્ઝન વિશે અન્ય પ્રશ્નો અથવા આ કાર્ય? કે ખરેખર પણ સ્યુડોકોડનો નથી. જે સામાન્ય માં કોડ છે તમે આ માટે લખ્યું હશે સી. ઠીક છે, કોઈ અન્ય પ્રશ્ન અહીં વિષયો અપ વિશે શું? અરે વાહ. વિદ્યાર્થી: હું એક ઝડપી rundown છે અપૂર્ણાંક બિંદુ અને ચોકસાઇ. જેસન HIRSCHHORN: ફ્લોટિંગ બિંદુ અને ચોકસાઇ. કરી શકો છો કોઈકને ખરેખર ઝડપથી મને એક rundown આપી અપૂર્ણાંક બિંદુ અને ચોકસાઇ? તમે તમારા બધા માટે આ કરી હતી સમસ્યા સેટ, જેથી તમે બધા છો તેની સાથે પરિચિત. અથવા કદાચ નથી તો તારો. કોઈપણ? મને એક શરૂ જગ્યા પર રાખો. ફ્લોટિંગ પોઇન્ટ અને ચોકસાઇ. સમસ્યા શું છે? હા. વિક્ટોરિયા? વેનેસા: વેનેસા. જેસન HIRSCHHORN: વેનેસા. માફ કરશો. વેનેસા: માત્ર એક જ મર્યાદિત સંખ્યામાં છે રજૂ કરી શકાય છે નંબરો તમે, માં પર છો, કારણ કે અમારા કેસ, 32-bit સિસ્ટમ. તેથી તમે પ્રકારની હોય છે કેટલાક નંબરો બનાવે છે. જેસન HIRSCHHORN: તેથી તે છે એકદમ સચોટ. માત્ર એક ચોક્કસ રકમ છે રજૂ કરી શકાય છે નંબરો. તમે બે અત્યંત મોટી સંખ્યામાં ગુણાકાર છે, તે જથ્થો ઓવરફ્લો શકે જગ્યાઓ તમે પ્રતિનિધિત્વ ધરાવે પૂર્ણાંક. ક્યારેક અમે ઉપયોગ શા માટે છે એક તેના બદલે પૂર્ણાંક લાંબા લાંબા હોય છે. તે વધુ જગ્યાઓ છે. કે જે મોટી સંખ્યામાં સમાવી શકે છે. ફ્લોટિંગ પોઇન્ટ ચોકસાઇ સાથે કરી છે કે, પણ સાથે કરી છે દશાંશ નંબરો છે કે હકીકત હંમેશા નથી રજૂ. માફ કરશો. મને આ પાછા મૂકી દો. આ દશાંશ નંબર 1.0 હંમેશા નથી તમારા જેવા રજૂ અપેક્ષા, 1,000000000. તેને ક્યારેક તરીકે રજૂ થાય છે 1,000000001 અથવા 0,999999999. તે પણ 89 ફેંકવામાં આવી શકે છે ક્યાંક ત્યાં. તેથી તે દશાંશ નંબર નથી બરાબર તમે જેમ રજૂ તેમને રજૂ કરી શકે છે. તેથી સમસ્યા માં સુયોજિત - તે બે હતી? - સમસ્યા અમે વિચાર કર્યો છે જ્યાં બે સેટ અમે ઇચ્છતા જ્યારે અપૂર્ણાંક બિંદુ સંખ્યામાં, તેમને અમે ચોકકસ શું પ્રતિનિધિત્વ તેમને રજૂ કરવા માટે, નંબર પેનિઝ, અથવા સેન્ટના સંખ્યા, અમે 100 દ્વારા વધવું. અમે તેમને ધરપકડ. અને પછી અમે બધું કાપી દશાંશ બિંદુ પાછળ છે. તેની ખાતરી કરવા માટે હતી કે તેઓ કરશે અમે ચોકકસ શું ખરેખર સમાન તેમને સમાન થાય છે. તમે કંઈક લેવા જ્યારે તે છે કારણ કે ફ્લોટ અને તમે પૂર્ણાંક મા ફેરવાઇ જાય છે જમણી બધું કાપી દશાંશ બિંદુ છે. કેટલાક અપૂર્ણાંક બિંદુ છે કારણ કે અશુદ્ધિ, 100.000 હોઈ શકે 99,999999999 તરીકે રજૂ. અને તમે માત્ર બધું માટે નષ્ટ જો સીધા યોગ્ય, તમે રહ્યા છીએ ખોટી મળી રહ્યાં છે. અરે વાહ. વિધાર્થી હું હતો એક પ્રશ્ન વિશે કાસ્ટિંગ. શું ક્રમમાં તે થાય છે? તમે ફ્લોટ કરવા માંગો છો તો, કૌંસ, 1 વિ 10 સુધીમાં 1, 10 દ્વારા વિ થાય છે પછી 0.1 વિચાર, પછી ચાલુ ફ્લોટ માં? જેસન HIRSCHHORN: જો તમે કરો 10 દ્વારા વિ 1 ફ્લોટ - વિદ્યાર્થી: અરે વાહ, અને પછી બરાબર - સાથે સાથે, તે સામાન્ય રીતે તે સમાન છે - અરે વાહ. તમે તેને એક ફ્લોટ બનાવવા માંગો છો, અધિકાર? જેસન HIRSCHHORN: ઠીક છે, તેથી અમે રહ્યા છીએ આઉટ figuring માં segue ઉપયોગ આ પ્રશ્નોના જવાબો કોડિંગ દ્વારા. તમે કદાચ ઘણો પડશે કારણ કે આ મિનિટ પ્રશ્નો, અને સારી રીતે તેમને ઉકેલવા માટે કોડિંગ દ્વારા છે. તેથી અમે હવે આ અધિકાર કોડ કરવા જઈ રહ્યાં છો અને પછી અમે પાછા જાઓ રહ્યું છે અને કરી રહ્યાં છો તમે હતા તે પ્રશ્ન કોડ. જેથી પ્રથમ વાક્ય - હું તે હોય જોઈએ - છે અમે કરવા માંગો છો પ્રથમ વસ્તુ જ્યારે અમે gedit એક નવી ફાઈલ ખોલો? વિધાર્થી સમાવેશ કરો. જેસન HIRSCHHORN: શું સમાવેશ કરો? વિધાર્થી CS50 પુસ્તકાલય. જેસન HIRSCHHORN: બરાબર. અમે બીજું શું સમાવેશ કરવો જોઇએ? અમે હમણાં જ શું થાય છે તપાસ જઈ રહ્યાં છો જો તમે ફ્લોટ કંઈક પડેલા છે. પરંતુ આપણે જો સમાવવા માટે જરૂરી છે એક સી કાર્યક્રમ લખી રહ્યા? વિધાર્થી ધોરણ I / O જેસન HIRSCHHORN: stdio.h. અમે ખરેખર આ માટે જરૂર નથી કાર્યક્રમ, cs50.h, તે છતાં પણ તે સમાવવા માટે હંમેશા મદદરૂપ. પરંતુ અમે હંમેશા stdio.h જરૂર છે. વિધાર્થી સી કોડિંગ છે? જેસન HIRSCHHORN: સી માં કોડિંગ ત્યારે તેથી હું આ. ફાઈલ તરીકે સંગ્રહો. હું કેટલાક સરસ વાક્યરચના પ્રકાશિત વિષે. હું મુખ્ય અંદર રદબાતલ લખ્યું હતું. રદબાતલ શું અર્થ છે? વિદ્યાર્થી: કોઈપણ લેવા નથી આદેશ વાક્ય દલીલો. જેસન HIRSCHHORN: આ રદબાતલ અર્થ છે, કેસ, મુખ્ય કોઈપણ નથી આદેશ વાક્ય દલીલો. અન્ય કિસ્સાઓમાં, તે કાર્ય અર્થ એ થાય આદેશ વાક્ય દલીલો નથી. અથવા કાર્ય, હું તો રદબાતલ લખવા માટે મુખ્ય (રદબાતલ), કે મુખ્ય કહે છે કંઈપણ પરત. તેથી રદબાતલ માત્ર કંઇ છે. હું હોત તો હું શું લખી શકે છે આદેશ વાક્ય દલીલો લે છે? વિધાર્થી પૂર્ણાંક આર્ક સી શબ્દમાળા આર્ક વિ જેસન HIRSCHHORN: પૂર્ણાંક argc શબ્દમાળા argv. તે સાચું છે? વિદ્યાર્થી: તે ચાર રચે સ્ટાર argv કૌંસ છે. જેસન HIRSCHHORN: તેથી તમે લખી શકે છે શબ્દમાળા argv કૌંસ અથવા ઘરનાં પરચૂરણ કામો સ્ટાર argv કૌંસ, પરંતુ તમે કૌંસ જરૂર છે. Argv ઝાકઝમાળ છે શબ્દમાળાઓ, યાદ કરે છે. તે માત્ર એક શબ્દમાળા નથી. તેથી શબ્દમાળા argv અહીં, છે છે એક શબ્દમાળા argv કહેવાય છે. શબ્દમાળા argv કૌંસ, અહીં છે છે શબ્દમાળાઓ પણ દર્શાવે છે. તેથી પૂર્ણાંક argc શબ્દમાળા argv કૌંસ કંઈક હશે કે હું કદાચ લખ્યું હશે. તેથી જો તમે એક પૂર્ણાંક માં સેવ માગે છે? વિદ્યાર્થી: અરે વાહ, પૂર્ણાંક. અથવા ફ્લોટ માં. જેસન HIRSCHHORN: ફ્લોટ માં? જેમ, ફ્લોટ એક્સ 10 દ્વારા વિ 1 સમકક્ષ હોય છે. જેસન HIRSCHHORN: બરાબર. કેવી રીતે હું printf માં ફ્લોટ છાપે છે? શું? વિધાર્થી% એફ. જેસન HIRSCHHORN:% એફ. પૂર્ણાંક શું છે? ડી અથવા હું. શબ્દમાળા શું છે? વિધાર્થી ઓ. જેસન HIRSCHHORN: એ. હું કેવી રીતે એક નવી લાઇન વિચાર છે? વિધાર્થી બેકસ્લેશ n એ. જેસન HIRSCHHORN: હું શું પાછા નથી મુખ્ય રન યોગ્ય રીતે તો શું? વિધાર્થી 0. હું જોકે, તે લીટી લખી કરવાની જરૂર છે? વિદ્યાર્થી: ના, ઠીક છે, અમે તે પછી, તે લખી નથી. બધા લોકો વાંચી શકે છે? તે થોડી નાની લાગે છે. બધાને જુઓ, અથવા જોઈએ કરી શકો છો હું તે મોટા છે? હું કેમેરા માટે, અમે બનાવવા પડશે લાગે જોકે, તે થોડી મોટી. જેસન HIRSCHHORN: હું આ ચાલુ કરવા માંગો છો, . એક્ઝિક્યુટેબલ માં કેચ ફાઈલ, શું હું લખી શકું? વિધાર્થી પરીક્ષણ કરો. જેસન HIRSCHHORN: માફ કરશો? વિધાર્થી પરીક્ષણ કરો. જેસન HIRSCHHORN: પરીક્ષણ કરો. અમે વિશે વાત કરવામાં આવી હતી અગાઉ આ વાક્ય. રણકાર. રણકાર શું છે? કમ્પાઇલર નામ. આ વાક્ય શું છે? વિધાર્થી GDB ઉપયોગ માટે તે સુયોજિત કરે છે. જેસન HIRSCHHORN: સમૂહો તે GDB ઉપયોગ માટે. આ રેખા, કે શું છે? વિધાર્થી સોર્સ કોડ. જેસન HIRSCHHORN: કે છે સ્રોત ફાઇલ, પાંચ. ફાઇલ. આ બે રેખાઓ શું કરી શકું? અથવા આ બે રેખાઓ નથી. વિદ્યાર્થી: તે નામો ચકાસો. જેસન HIRSCHHORN: તેથી આ આડંબર કંઈપણ કહે છે, તેને અલગ કંઈક નામ. અને અહીં તમે ચકાસણી કૉલ કરી રહ્યાં છો. હું કે ન હોય, શું તે આ નામ આપશે? વિધાર્થી A.out. જેસન HIRSCHHORN: A.out. આ શું કરે છે? વિધાર્થી ગણિત લાઇબ્રેરી કડી થાય છે. જેસન HIRSCHHORN: તે લિંક્સ ગણિત લાઇબ્રેરી માં. અમે ગણિત લાઇબ્રેરી સમાવેશ થાય છે, પરંતુ ન હતી કે જેથી તે સામાન્ય બાબત છે કારણ કે, તેઓ કરેલા લેખિત બનાવવા હંમેશા સમાવેશ થાય છે ગણિત લાઇબ્રેરી. અને આ જ રીતે, આ સમાવેશ થાય છે CS50 પુસ્તકાલય. અમે યાદી જો ઠીક છે, તેથી, અમે હવે છે ટેસ્ટ કહેવાય એક્ઝિક્યુટેબલ. તેને ચલાવો, તો હું ટેસ્ટ લખો. હું મારા અપૂર્ણાંક બિંદુ જુઓ કે અપેક્ષા, 0 સમકક્ષ હોય છે. કે કરે છે - તેથી - વિધાર્થી પછી તમે મૂકી, હવે ફ્લોટ જેમ તમે તે ફ્લોટ તરીકે ભૂમિકા - જેસન HIRSCHHORN: કલાકારો ફ્લોટ કરવા માટે 1? વિધાર્થી ના, સંપૂર્ણ વસ્તુ ભૂમિકા - હા. તમે એમ જ કર્યું હતું, તો છો તે 0.1 છે? જેસન HIRSCHHORN: ઠીક છે, તેથી ખરેખર ઝડપથી, 1 10 દ્વારા વિ, તે છે પૂર્ણાંકો વિભાજિત છે. તમે પૂર્ણાંકો વિભાજિત તેથી, જ્યારે તેઓ 0, અને તમે સાચવી રહ્યા છો કે 0 એ સ્લેશ, કારણ કે ફ્લોટ માત્ર પૂર્ણાંક વિભાગ. તેથી હવે આપણે કંઈક દેવાનો કરી રહ્યાં છો ફ્લોટ માં. માતાનો શું થાય તે જોઈએ. અમે પરીક્ષણ બનાવવા પડશે. તેથી હવે અમે તે સ્લેશ ન હતી કે જુઓ પૂર્ણાંક વિભાગ, તે તરતી હતી બિંદુ વિભાગ. તેની દલીલો ફ્લોટ માટે ભૂમિકા હતી. તેથી હવે તે આ સારવાર, કહેતા હતા વિભાગ અમે સાથે કામ કરી રહ્યાં છો ફ્લોટિંગ પોઇન્ટ, બિન પૂર્ણાંકો સાથે. અને તેથી અમે અમે અપેક્ષા જવાબ મળે છે. માતાનો શું થાય તે જોઈએ - અરે. હું વધુ દશાંશ છાપો માગતા હતા સ્થળો, હું કેવી રીતે કરી શકે? વિધાર્થી પોઇન્ટ ડોટ એફ, અથવા ઘણા તમે ઇચ્છો તરીકે અક્ષાંશ મૂકે છે. જેસન HIRSCHHORN: તેથી હું છાપો 10 દશાંશ સ્થળો. અને અમે હવે અમે મળી રહ્યાં જુઓ કેટલાક વિચિત્ર સામગ્રી. અને તે પાછા તમારા પ્રશ્નનો જાય વિશે બિંદુ અશુદ્ધિ તરતી. અહીં સંગ્રહિત વિચિત્ર સામગ્રી છે. ઠીક છે, કે તમારા પ્રશ્નનો જવાબ છે? તમે બીજું શું માંગો છો હતી ઝડપથી કોડ માટે? વિધાર્થી હું માત્ર કે જોવા ઇચ્છતા નથી, તો તમે કેટલાક નિર્દેશક મુક્ત છે, કે નિર્દેશક હજુ પણ સંગ્રહિત હતી કે નહીં તે કરવામાં આવી હતી તે ની સરનામા અગાઉ તરફ ઇશારો. જેસન HIRSCHHORN: બરાબર, તેથી આપણે તે કરીએ. ચાર સ્ટાર ptr આ ચલ બનાવે છે પ્રકાર ઘરનાં પરચૂરણ કામો તારાનું ptr છે. હું કેવી રીતે malloc લખી શકું? એલન? ALDEN: જસ્ટ malloc. પરંતુ પછી તે કદ હોઈ શકે છે, અને આ કિસ્સામાં, હું તમને છો ધારી ઘરનાં પરચૂરણ કામો તરફ ઇશારો કરી. તેથી તે ચાર રચે હશો. જેસન HIRSCHHORN: ઠીક છે, તેથી વધુ સામાન્ય, અંદર - માતાનો ફેરફાર કરો. Malloc અંદર, તમે સંખ્યા માંગો છો ના ઢગલો પર બાઇટ્સ. સામાન્ય રીતે, શું આપણે છો જોઇ છે કરવા માટે આપણે malloc રહ્યા છીએ છે ઉદાહરણ તરીકે શબ્દમાળાઓ, અથવા પૂર્ણાંકો એરે. તેથી અમે 10 પૂર્ણાંકો, અથવા 10 માંગો છો અક્ષરો, 10 અમને 10 આપશે. અને પછી અક્ષરો કદ આપશે ચાલો, અક્ષરો કદ, જેમાં આ કેસ 1 બાઇટ છે. અમે 10 બાઇટ્સ વિષે. અમે પૂર્ણાંક માપ લખી હતી, તો કે અમને 40 બાઇટ્સ આપતા. તેથી વધુ સામાન્ય છે, malloc ની અંદર તમે ઇચ્છો બાઇટ્સ સંખ્યા છે. આ કિસ્સામાં, અમે 1 બાઇટ રહ્યાં છો. એક વિચિત્ર ઉપયોગ જેવી લાગે છે malloc છે, પણ અમારા હેતુ અર્થમાં બનાવે છે. જેથી તે ત્યાં છે. અમે મુક્ત કહી રહ્યા છીએ. અમે તેને છુટકારો મળે છે અને અમે ફરી ptr ઉપયોગ કરે છે. અને જો તમે ચકાસવા માટે શું જોઈએ છે? વિધાર્થી હું માત્ર કે કેમ તેની તપાસ કરવા માગે છે અથવા કંઈપણ હતી નથી તે અંદર. જેસન HIRSCHHORN: તેથી શું તે કંઇ પર ધ્યાન? વિદ્યાર્થી: અરે વાહ, બરાબર છે, શું તે હજુ પણ એક મેમરી સરનામું હતું. જેસન HIRSCHHORN: તેથી તમે કરવા માંગો છો ptr મૂલ્ય ચેક કરો? વિદ્યાર્થી: અરે વાહ, બરાબર. જેસન HIRSCHHORN: હું અહીં શું લખ્યું છે હું ની કિંમત ચેક કરવા માંગો છો બિંદુ - શું છે, જોર્ડન કિંમત છે? અથવા શું ptr ની અંદર સંગ્રહાય છે? વિધાર્થી એક મેમરી સરનામું. જેસન HIRSCHHORN: એક મેમરી સરનામું. હું આ લખી તેથી, જો તે પડશે મને ptr મૂલ્ય આપે છે. કઈ રીતે હું છાપે છે મેમરી સરનામા? બંધારણ શબ્દમાળા શું છે મેમરી સરનામા માટે? વિધાર્થી% પી. જેસન HIRSCHHORN:% પી. % એ શબ્દમાળા છે. નિર્દેશક માટે% પી. તે સાચું છે? તે સાચું છે. તેથી ptr જેટલી જ થાય છે - તે હજુ પણ તેને કંઈક છે. આ કદાચ વધુ છે રસપ્રદ પ્રશ્ન. તે લીટી શું કરે છે? વિધાર્થી ખામી seg. જેસન HIRSCHHORN: શું છે? વિધાર્થી હું તે ખામી seg છે. જેસન HIRSCHHORN: હમ્મ? વિધાર્થી હું તે ખામી seg પડશે એવું લાગે છે. જેસન HIRSCHHORN: તેથી આ વાક્ય કોડ છે, સ્ટાર ptr છે, શું તારો અર્થ છે? વિધાર્થી ના સામગ્રી. જેસન HIRSCHHORN: અરે વાહ. સામગ્રી વિચાર પર જાઓ. તેથી આ મેમરી માટે જવા માટે ચાલે છે ત્યાં સંબોધવા માટે અને મને કે આપે છે. હું અહીં% C ઉપયોગ કારણ કે ત્યાં અક્ષરો સંગ્રહ થયેલ છે. તેથી અમે તે આંકડાના અમે પર જાઓ રહ્યા છીએ માત્ર જોવા મળી હતી - અથવા તે કદાચ પ્રયત્ન કરીશું થોડો અલગ આ અમે કાર્યક્રમ ચલાવો સમય. પરંતુ અમે તે સરનામા પર જાઓ પડશે અમે હજુ પણ અસ્તિત્વ ધરાવે છે જાણીએ છીએ કે જે અને ત્યાં તે જોવા. તેથી તે ખામી seg ન હતી. તે માત્ર આપણા કંઈપણ આપી ન હતી. તે ખરેખર અમને આપવામાં આવી છે શકે છે કંઈક, અમે માત્ર તેને જોઈ શકે છે. અને તે પાછા આ વિચાર માટે જાય છે - અને અમે માં ખૂબ જ વિચાર નથી જઈ રહ્યાં છો આ છે, કે જે બહાર છે કારણ કે આ કોર્સ કરવાની સંભાવના. અમે તો અમે અહીં વિશે વાત કરી દ્વારા એરે ફરી વસ્તીની સીમાથી દૂર થયું 1, અમે મુશ્કેલીમાં મળે છે. કેટલીકવાર, તમે માત્ર 1 દ્વારા બહાર જવું છે, તમે કંઇક ખોટું કરી, અને કરી રહ્યાં છો મુશ્કેલીમાં વિચાર કરી શકે છે. પરંતુ તમે હંમેશા મુશ્કેલીમાં મળી નથી. તે આધાર રાખે છે કેટલી ખરાબ વસ્તુ તમે , તમે મુશ્કેલી માં વિચાર જઈ રહ્યાં છો છે. Sloppy કરી કહે છે, નથી જે તમારો કોડ સાથે. પરંતુ તે કાર્યક્રમ નથી, કહે છે તમે ક્યાંક જાઓ તો પણ હંમેશા બહાર નીકળવા તમે જવા માટે માનવામાં કરી રહ્યાં છો. કે એક સારું ઉદાહરણ છે, કે ઘણો છે તેમની સમસ્યા લોકો, 3 સેટ જે 15, ચેક ન હતી હતી બોર્ડના ભૂસકે. તેથી તમે જોવામાં, ડાબી જોવામાં અધિકાર હતા, ટોચ પર હતા નીચે. પરંતુ તમે એ જોવા માટે ચકાસણી કરી ન હતી, જો ટોચ વાસ્તવમાં બોર્ડ પર પ્રયત્ન થઇ રહ્યા હતા. અને તે હતી જે ઘણા લોકોને અને કે માં ચાલુ છે, તેમના કાર્યક્રમ કામ કર્યું હતું સંપૂર્ણપણે, જ્યાં તે મંડળની હતી કારણ કે તમે એક ગયા છે, મેમરીમાં સ્ટોર તે ઉપર અથવા ચકાસાયેલ કે મેમરી સરનામું કંઈપણ ત્યાં ન હતો તે વિશે ખાસ કરીને ભયાનક, તેથી તમારા કાર્યક્રમ ન હતો તમે કિકિયારી રહ્યું. પરંતુ અમે હજુ પણ પોઇન્ટ બોલ લેવા ઉંમર જો તમારે તે તપાસ કરી ન હતી, કારણ કે તમે જો તમે ન હતા કંઈક કરી રહ્યા હતા કરવા માટે માનવામાં આવે છે, અને તમે કરી શકે છે મુશ્કેલીમાં મેળવેલ. ઓડ્સ તમે કદાચ ન હતી, જોકે, છે. તેથી આ, હા, તે બતાવવા માટે છે અમે હજુ પણ તે જઈ શકે છે. અને અમે માં ન મળી રહ્યા આ કિસ્સામાં મુશ્કેલી. અમે વાંચી નથી પ્રયત્ન કર્યો છે, તો આગામી 100 અક્ષરો, અમે છો કદાચ મુશ્કેલીમાં વિશે. અને તમે આગામી 100 વાંચન કોડ શકે અક્ષરો તમે કેટલાક કરવાથી માંગો છો પ્રકારની એક માટે લૂપ. અરે વાહ. વિધાર્થી અમને સોંપવામાં આવેલાં હોવાથી કે જગ્યા એક વાસ્તવિક મૂલ્ય, અમે કરશે ખરેખર કંઈપણ જોવા માટે સમર્થ છે. અમે સુયોજિત સાથે પ્રયત્ન કરીશું કે C અથવા કંઈક ગમે તે સમાન? જેસન HIRSCHHORN: મહાન પ્રશ્ન. હું કેવી રીતે તે કિંમત સુયોજિત કરો - શું કોડ વાક્ય હું વાક્ય પર લખી શકું સાત તમે શું કહ્યું છે? વિધાર્થી સ્ટાર ptr એક જેટલી જ થાય છે ભાવ એક ભાવ અંત સી. જેસન HIRSCHHORN: જેથી મૂકી છે એક પાત્ર, સી, તે સ્થાન પર, કારણ કે ફરીથી, કે સ્ટાર ત્યાં પર જાઓ છે. અને ડાબી બાજુ પર ઉપયોગ કરવામાં આવે ત્યારે એક સોંપણી ઓપરેટર છે, કે જે બરાબર સાઇન ઇન કરો, અમે વિચાર નથી જઈ રહ્યાં છો કે કિંમત તે કિંમત સુયોજિત તરીકે ખૂબ જ. હવે આપણે શું થાય છે તે જુઓ. અમે ત્યાં કંઈક મૂકી અને તે હતી. અમે મુક્ત છે. કેટલીક સામગ્રી કદાચ થયું ઢગલો પર. તેથી તે હવે ત્યાં નથી. પરંતુ ફરીથી, અમે ન મળી રહ્યા ત્યાં જવા માટે મુશ્કેલી. હું સમજાવવા માટે કોડ આ બહાર કરી રહ્યો છું કે આ ઘણો કે તમારી પાસે પ્રશ્નો, તેઓ ખરેખર રસપ્રદ સમય ઘણો જવાબ આપે છે. અને તેઓ ખરેખર સારા પ્રશ્નો છો. અને તમે પર આકૃતિ કરી શકો છો તમારા પોતાના છે, ઉદાહરણ તરીકે, અમે વિભાગમાં નથી. અરે વાહ. વિધાર્થી તમે મોકલી નથી કારણ કે ગમે ત્યાં નિર્દેશક, તમને જરૂર છે malloc ઉપયોગ કરો છો? જેસન HIRSCHHORN: તેથી આ બોલ તમારા પ્રારંભિક પ્રશ્નનો. [? ?] તે માત્ર એક સ્થાનિક ચલ છે? અહીં Malloc કે અનિવાર્ય નથી. અહીં malloc ઉપયોગ નથી તે છે કે કારણ કે અનિવાર્ય માત્ર એક સ્થાનિક ચલ. વિધાર્થી જેથી તમે ઘરનાં પરચૂરણ કામો કરી શકે સ્ટાર ptr હેલો જેટલી જ થાય છે? જેસન HIRSCHHORN: ઓહ. તેથી અમે હવે પાછા મળી રહ્યા છીએ તમારા પ્રારંભિક પ્રશ્નનો. હું તમને સંતોષ ન હતા લાગે છે મારા જવાબ છે. બરાબર? કે ગમે છે? વિધાર્થી યાહ. રાહ જુઓ. જેસન HIRSCHHORN: અને જ્યાં તમે પ્રિન્ટ કરવા માંગો છો? તેથી અમે તે જેવી શબ્દમાળા છાપો પડશે? વિધાર્થી મનોરંજક. જેસન HIRSCHHORN: તેથી આ, આ છે દલીલ એક અક્ષર પ્રકાર છે. તેથી આ એક અક્ષર હોવા જોઈએ. વિધાર્થી માત્ર પ્રથમ એક છે. જેસન HIRSCHHORN: તેથી આ હું પહેલાં જણાવ્યું હતું કે, તે છે. જેમ હું સ્ટોર નથી, જણાવ્યું હતું કે ચલ નિર્દેશક અંદર શબ્દમાળા. સ્ટોર છે - વિધાર્થી પ્રથમ કિંમત શબ્દમાળા. જેસન HIRSCHHORN: આ સરનામું શબ્દમાળા પ્રથમ મૂલ્ય. અમે આ છાપે હતા, અમે છો નિર્દેશક અંદર કિંમત મેળવવામાં. અને અમે તે ખરેખર, છે જોશો મેમરી સરનામું. કે અર્થમાં છે? માફ કરશો. કે તમારો જવાબ છે, રાહ જુઓ પ્રશ્ન છે, જોકે? વિધાર્થી યાહ. જેસન HIRSCHHORN: કોડ આ વાક્ય છે શબ્દમાળા અને પછી બીજા ઓનલાઇન પોઇન્ટ છે કે ચલ નિર્દેશક કે જેઓ શબ્દમાળા માટે, કે દર્શાવે છે. અરે વાહ. અમે એક મેમરી ગયા તેથી જો: વિદ્યાર્થી વધુ સંબોધવા, અમે એચ વિચાર કરશે? તે શબ્દમાળા તરીકે સંગ્રહ કરવામાં આવી છે? જેસન HIRSCHHORN: જેમ આપણે કર્યું - તેથી આ કરવા માટે જરૂરી છે. આ બિંદુ અંકગણિત, જે તમે ગાય્ઝ છે પહેલાં જોઈ હોય અને પ્રયત્ન કરીશું સાથે પ્રમાણમાં આરામદાયક. આ લખાણ સમાન છે - અમે કોડ આ વાક્ય લખી હતી, જો અમે પહેલાં એરે સંકેત જોઇ છે. આ અમને બીજા આપવી જોઇએ આ એરે, એચ માં મૂલ્ય. અમે આ કર્યું, આ પણ આપવી જોઇએ ચાલો, એરે બીજા મૂલ્ય. તે મેમરી નથી જઈ રહ્યો છે, પ્રથમ વસ્તુ આંકડાના, પરંતુ એક પર વસ્તુ મેમરી સરનામું. અને પછી તારો ઓપરેટર dereferences કે નિર્દેશક. અને ફરી, ચાલો જોવા. અમે ફરીથી એચ વિષે. વિધાર્થી કરે છે બરાબર શું અર્થ ખોટો સંદર્ભ? જેસન HIRSCHHORN: ડિરેફરન્સ પર જાઓ માટે ફેન્સી શબ્દ છે. કે પર જાઓ અને ત્યાં શું વિચાર એક નિર્દેશક ખોટો સંદર્ભ છે. તે માટે માત્ર એક ફેન્સી શબ્દ છે. અમે પ્રિન્ટ માગતા હતા: વિદ્યાર્થી સમગ્ર શબ્દમાળા શકે અમે 'ચિન્હ નિર્દેશક છે? જેસન HIRSCHHORN: બરાબર, અમે છે અહીં વિરામ માટે જઈ રહી છે. અમે અહીં અંત રહ્યું છે. 'નું ચિહ્ન તમે ના સરનામા આપે છે પાંચ, તેથી જ્યારે તમે 'ચિન્હ કરી ચલ, તો તે તમને આંકડાના આપે કે ચલ સંગ્રહ થયેલ છે. 'નું ચિહ્ન નિર્દેશક તમે આપશે ptr મેમરીમાં જ્યાં ptr સરનામું. અમે પર જવા માટે જઈ રહ્યાં છો આ ઉદાહરણ સાથે. તમે આ આકૃતિ કરી શકો છો તમારા પોતાના પર વસ્તુઓ. પરંતુ ફરીથી, આ તો એક verging કરી શકે છે તમારા માટે જાણવાની જરૂર છે તે આગળ વધે છે બીટ આ મધ્યસત્ર તક - અથવા આ ક્વિઝ બદલે. માફ કરશો. હું છો કારણ કે અમે પર ખસેડો જવું છે એક કોડિંગ સમસ્યા કરવા માંગો સમય છે તે પહેલાં. અને અમે હું શું વિચારો કોડ માટે જતા હોય છે આમાંથી સૌથી આકર્ષક છે ઉદાહરણો, atoi. તેથી આ પર એક પ્રશ્ન હતો બે વર્ષ પહેલાં એક ક્વિઝ. અને હું અહીં બોર્ડ પર છે. લોકો ક્વિઝ પર કહેવામાં આવ્યું હતું - તેઓ થોડી વધુ tesxt આપવામાં આવી હતી પ્રશ્ન છે, પણ હું દૂર આ તે બિનજરૂરી હતું લખાણ કારણ હવે અમારા હેતુઓ માટે. તે માત્ર કેટલાક પૃષ્ઠભૂમિ હતી શું atoi પર. પરંતુ જો તમે બધા જાણો છો અને ખૂબ જ atoi સાથે પરિચિત. હું તમને આ કોડ સૂચવે છે એક કાગળ પર. હું પણ તમે વ્યૂહરચના ઉપયોગ કરવા માટે સૂચન અમે ઉપર ગયા કર્યું છે કે અમારા વિભાગમાં ઘણો. પ્રથમ, ખાતરી કરો કે તમે સમજો છો શું atoi માતાનો કરી. એક ચિત્ર દોરો અથવા અમુક સાથે આવી તમારા માથા માં તેના માનસિક છબી. આગળ, આ માટે સ્યુડોકોડનો લખો. ક્વિઝ પર, તમે વિચાર બધા છે સ્યુડોકોડનો, ઓછામાં ઓછા તમે કંઈક નીચે મૂકો. અને પછી પર કે સ્યુડોકોડનો મેપ સી જો તમે એક ચેક હોય તો આપની સ્યુડોકોડનો, જેમ તપાસો જો કંઈક 1, કે જે જો પર નકશા છે તેથી આગળ શરત છે. અને છેલ્લે, સી માં કાર્યક્રમ કોડ તેથી પાછા atoi પર જાઓ અને પાંચ મિનિટ લે છે એક શીટ પર આ કોડ કરવા આ વિશે કદાચ છે, કે જે કાગળ, તમે પર લેશે તે સમયનો જથ્થો કોડ atoi માટે ક્વિઝ. પાંચ થી 15 મિનિટ, પાંચ માટે પાંચ, 12 10 મિનિટ, જથ્થો છે તમે આ પર વીતાવી સમય ક્વિઝ માં પ્રશ્ન. તેથી, હવે પાંચ મિનિટ કરો લે છે. અને જો તમે કોઇ પ્રશ્નો હોય, તો એકત્ર તમારા હાથ અને હું આસપાસ આવશે પડશે. [પ્રાસંગિક વાતચીત] જેસન HIRSCHHORN: ઠીક છે, તેથી કે પાંચ મિનિટ હતી. જથ્થો કે જે આશરે કદાચ હતી સમય તમે એક ક્વિઝ પર પર વીતાવી તે સમયે કદાચ નીચા અંત. અમે થોડી માં રીકેપ પડશે. અમને આ કોડિંગ શરૂ કરો. અને અમે બધી રીતે મારફતે વિચાર નથી, આ જવાબો અને આ ક્વિઝ પ્રશ્ન ફરી, ઉપલબ્ધ છે, વિકેટનો ક્રમ ઃ 2011 આ પ્રશ્ન જ્યારે છે ક્વિઝ પર દેખાયા હતા. અને તે આઠ પોઈન્ટ વર્થ હતી ક્વિઝ પર પછી. આઠ પોઇન્ટ ઊંચા ઓવરને પર છે પોઇન્ટ કંઈક રકમ વર્થ છે. સૌથી વધુ પ્રશ્નો રેન્જમાં છે એક થી છ પોઈન્ટ. તેથી આ એક વધુ પડકારરૂપ છે ખાતરી કરો કે માટે પ્રશ્ન. મને કોઈની શરૂ કરી શકો છો? સામાન્ય રીતે, અમે શું જોઈ રહ્યા છે આ સાથે કરવા માંગો છો તાર્કિક, atoi કામ? અમે શું કરવા માંગો છો? તેથી અમે લખી રહ્યા છીએ કેટલાક સ્યુડોકોડનો. વિધાર્થી અક્ષરો કન્વર્ટ પૂર્ણાંકો માં. જેસન HIRSCHHORN: અક્ષરો કન્વર્ટ પૂર્ણાંકો માં. બરાબર. તેથી કેટલા અક્ષરો અમે છે સુધી જવાની જરૂર રહ્યું? વિધાર્થી તે બધા. વિધાર્થી બધા અક્ષરો શબ્દમાળા માં. જેસન HIRSCHHORN છે: બધા શબ્દમાળા માં અક્ષરો. અમે દરેક મારફતે જાઓ માગતા હતા તેથી જો એક શબ્દમાળા માં પાત્ર, એક વસ્તુ શું છે સી અમે મંજૂરી આપી છે કે જોઇ છે અમને દરેક મારફતે જાઓ એક શબ્દમાળા માં પાત્ર? વિદ્યાર્થી: લૂપ માટે. જેસન HIRSCHHORN: લૂપ માટે. તેથી અમે મારફતે લૂપ રહ્યા છીએ એ દરેક પાત્ર. પછી આપણે શું કરવા માંગો છો જવું છે અમે ચોક્કસ અક્ષર વિચાર છે? અમે 90 પસાર રહ્યું છો. અમે 9 વિશે. તે એક પાત્ર છે. આપણે સાથે શું કરવા માંગો છો કે પાત્ર 9? વિધાર્થી પાત્ર 0 થી વડે બાદબાકી? વિધાર્થી 0 ઉમેરીએ? જેસન HIRSCHHORN: સબ્ટ્રેક્ટ અક્ષર 0 થી તે? વિધાર્થી યાહ. જેસન HIRSCHHORN: શા માટે કરવું તમે તે કરવા માંગો છો? વિધાર્થી [અશ્રાવ્ય] મૂલ્ય. તેના પૂર્ણાંક કિંમત. જેસન HIRSCHHORN: ઠીક છે, તેથી અમે લેવા અક્ષર 9, તેને બાદબાકી અક્ષર 0 એક વિચાર વાસ્તવિક પૂર્ણાંક 9. મીઠી. અને તમે કે અક્ષર જાણો છો 9 0 ઓછા પાત્ર 9 છે? તમે શું ચાર્ટ જોયું? વિધાર્થી નવ તાર્કિક છે 9 અને 0 વચ્ચે મૂકે છે. કે પછી તે ASCII ટેબલ પર નજર કરી શકે છે. જેસન HIRSCHHORN: ASCII ટેબલ. પરંતુ હા, તમે પણ યોગ્ય છો. તેથી અમે 0 બાદબાકી કરો. તેથી હવે અમે આ પૂર્ણાંક 9 છે. અને શું અમે તે સાથે શું કરવા માંગો છો? અમે 90 હોય છે, તે પ્રથમ પૂર્ણાંક છે અમે, અમે શું કરવું માંગો છો? વિધાર્થી હું હંગામી પૂર્ણાંક મૂકવામાં છો અરે, પછી તે માટે ગણિત નથી પછી અંત માં છે. જેસન HIRSCHHORN: બરાબર. વિદ્યાર્થી: તમે ઓવરને અંતે શરૂ કરી શકો છો પછી એરે અને તેથી આગળ વધો કે તમે આગળ વધો દર વખતે, તમે 10 દ્વારા વધવું. જેસન HIRSCHHORN: બરાબર. કે એક સુંદર જેવું સંભળાય છે અનિવાર્ય વિચાર. અમે અમારા એરે ઓવરને અંતે શરૂ કરી શકો છો, અને અમે strleng વાપરી શકો છો. અમે અહીં strleng વાપરી શકો છો. અમે અમારા શબ્દમાળા લંબાઈ મળશે. અમે ઓવરને અંતે શરૂ કરો. અને + આ પ્રથમ એક, અમે માત્ર લઇ પૂર્ણાંક, અને કદાચ આપણે એક જેવા બનાવો નવી પૂર્ણાંક ચલ ઉપર જ્યાં અમે બધું સ્ટોર કરી રહ્યાં. થી એ દરેક ઘરનાં પરચૂરણ કામો દ્વારા તેથી અમે લૂપ પાછા આગળ કરવા માટે, અમે 0 બાદબાકી, અને પછી અમે તેને લે છે, અને તેના પર આધાર રાખીને જ્યાં તે છે, અમે વધવું 10 ની શક્તિ દ્વારા. કારણ કે પ્રથમ એક, અમે શું જમણીબાજુનીસ્થિતિ અક્ષર દ્વારા મલ્ટીપ્લાય? વિધાર્થી પાંચ 0 થી 10. જેસન HIRSCHHORN: 0 ને 10. અમે બીજા શું ગુણાકાર કરો જમણીબાજુનીસ્થિતિ અક્ષર દ્વારા? વિધાર્થી [અશ્રાવ્ય]. જેસન HIRSCHHORN: શું છે? વિધાર્થી 1 માટે 10. જેસન HIRSCHHORN છે: 1 માટે 10. ત્રીજા જમણીબાજુનીસ્થિતિ પાત્ર? વિધાર્થી 2 10. જેસન HIRSCHHORN: 2 10. વિદ્યાર્થી: માફ કરશો, હું સમજી શક્યા નથી અમે અહીં શું કરી રહ્યાં છો. જેસન HIRSCHHORN: બરાબર, પછી, પાછા જાઓ. તેથી અમે મેળવી રહ્યા છીએ એક શબ્દમાળા માં પસાર કર્યો હતો. અમે atoi લખી રહ્યાં છે. તેથી અમે એક શબ્દમાળા માં પસાર કરો. અમે પસાર રહ્યું છો શબ્દમાળા 90 માં. અમે કરી રહ્યા છીએ પ્રથમ વસ્તુ સુયોજિત છે અમે છો કે નવી પૂર્ણાંક ચલ માત્ર બનાવવા જઈ અમારા નવા પૂર્ણાંક તરીકે. કે અમે જઈ રહ્યાં છો શું છે અંતે પાછા. અમે દરેક અક્ષર સુધી જવાની જરૂર શબ્દમાળા અમે નક્કી કર્યું છે કારણ કે અમે દરેક એક સ્પર્શ કરવાની જરૂર છે અને તે પછી અમારી નવી પૂર્ણાંક ઉમેરો. પરંતુ અમે માત્ર એક નંબર તરીકે ઉમેરી શકતા નથી. અમે હમણાં જ 9 લેવા અને ન કરી શકો છો અમારા પૂર્ણાંક 9 ઉમેરો. તે શું સ્થાન પર આધાર રાખે છે તે શબ્દમાળા છે. અમે મલ્ટીપ્લાય જરૂર જઈ રહ્યાં છો તે 10 ની શક્તિ દ્વારા. તે છે કારણ કે કેવી રીતે આધાર 10 કામ કરે છે. તેથી અમે વાસ્તવિક વિચાર જઈ રહ્યાં છો પાત્ર, અથવા વાસ્તવિક પૂર્ણાંક નંબર, અક્ષર 0 બાદબાકી દ્વારા અક્ષર 9 અમે સાથે કર્યું જેવી થી થી અક્ષર મૂડી એક બાદબાકી અમે એક હતી ગમે પાત્ર તે સમસ્યાઓ. તેથી અમે ખરેખર 0 થી સંખ્યાબંધ મળશે 9 એક વાસ્તવિક નંબર તરીકે સેવ, અને અમે પડશે આધાર રાખીને 10 ની શક્તિ દ્વારા વધવું અમે શબ્દમાળા છે જ્યાં પર. અને પછી અમે તેને પાછા ઉમેરવાની રહ્યા છીએ અમારા નવા પૂર્ણાંક ચલ માં. તેથી શું આ કરશે જેવો દેખાશે અમે અહીં પર ડ્રો કરીશું - કરી. અમે શબ્દમાળા 90 માં પસાર કરો તો - વિધાર્થી [અશ્રાવ્ય]. જેસન HIRSCHHORN: પણ atoi શબ્દમાળા લે છે. તેથી અમે મારફતે જાઓ રહ્યા છીએ આ હિસ્સો. અમે 90 માં પસાર મળશે. અમે આ બોલ પર પાછળ થી જાય છે. અમે 0 લે છે. વિધાર્થી હું દિલગીર છું. કદાચ આ મૂર્ખ છે. અમે એક શબ્દમાળા માં પસાર રહ્યું કરી રહ્યાં છો, શા માટે આપણે છો શું 90 છે માં પસાર રહ્યું? 90 પૂર્ણાંક છે. જેસન HIRSCHHORN: atoi એક છે કારણ કે શબ્દમાળા અને પૂર્ણાંક પ્રવેશ કરે છે કે જેઓ શબ્દમાળા પ્રતિનિધિત્વ. પરંતુ શબ્દમાળા 90 પૂર્ણાંક નથી 90 અથવા નંબર 90. આ શબ્દમાળા 90 એક બે એરે, અથવા ત્રણ અક્ષરો, તેના બદલે, આ 9 પાત્ર, 0 પાત્ર, અને બેકસ્લેશ 0 પાત્ર. અને અમે, કારણ કે માટે atoi લખી રહ્યાં ઉદાહરણ તરીકે, જો તમે આદેશ લેવા જ્યારે વાક્ય દલીલ, અને તે સચવાય છે argv, અથવા તે સ્ટ્રિંગ તરીકે સેવ છે. પરંતુ તમે નંબર તરીકે સારવાર કરવા માંગો છો, જો તમે રૂપાંતરિત કરવાની જરૂર વાસ્તવિક પૂર્ણાંક. જે આપણે સમસ્યા સેટ એક હતી. અમે સંખ્યાબંધ કર્યું છે અમારી સમસ્યા સેટ. પૂર્ણાંક લીધો કે દરેક વ્યક્તિને આદેશ વાક્ય દલીલ તરીકે. તેથી કે શા માટે અમારા atoi કાર્ય શબ્દમાળા લે છે. તેથી ફરી, અહીં અમારા ઉદાહરણમાં, અમે છો છેલ્લા એક લાગી રહ્યું. અમે પાત્ર બાદબાકી રહ્યા છીએ તે 0 છે, કારણ કે અક્ષરો 0 રાજ્ય બહા 0 દ્વારા subtracted તમે આપે છે અનુસાર વાસ્તવિક નંબર 0, અમે શું કે તે ASCII ગણિત. અક્ષરો તરીકે રજૂ કરવામાં આવે છે કારણ કે તેમના વાસ્તવિક કરતાં અલગ - પાંચ અક્ષર એક, ઉદાહરણ તરીકે, લોઅરકેસ 97 છે. તે નથી - અરે! તે તમે અપેક્ષા ગમે નથી તે ઉદાહરણ તરીકે,, 0 છે. તેથી તમે બાદબાકી હોય અક્ષર ના 0 વિચાર. તેથી અમે અહીં આ કરી રહ્યા છીએ વાસ્તવિક નંબર મળે છે. અને પછી અમે દ્વારા વધવું જવું છે 10 ની શક્તિ છે તેના પર આધાર રાખીને શબ્દમાળા માં છે, અને પછી તે લઇ અને આપણું ધારક ઉમેરી ચલ તેથી અમે સાથે આવી શકે અમારા અંતિમ નવી પૂર્ણાંક. કે દરેક વ્યક્તિ માટે અર્થપૂર્ણ છે? તેથી અમે આ કોડ કરવા જઈ રહ્યાં છો હમણાં, કારણ કે અમે છો સમય પર ટૂંકા મેળવવામાં. હું સમય માટે દિલગીર છીએ. પરંતુ આ શું, આસ્થાપૂર્વક, તમને છે પાંચ અંતે - ક્વિઝ પર શું કરવાનો પ્રયત્ન ખૂબ જ ઓછા, આ સ્યુડોકોડનો વિચાર લખાય. અને પછી, અમે તો લખવા માટે સ્યુડોકોડનો, વાસ્તવમાં, અમે આ કરી શકે ખૂબ ઝડપથી. આપણે લખ્યું ટિપ્પણીઓ દરેક લાઇન અહીં વિશે અનુવાદ સી કોડ એક વાક્ય. નવા ચલ, લેખન જાહેર લૂપ, કેટલાક બાદબાકી, કેટલાક ગુણાકાર, અને કેટલાક કામ. અમે કદાચ પણ કરવા માંગો છો છો વળતર વાક્ય લખો. અમે પણ મૂકી શકો છો અહીં કેટલાક ચકાસે છે. અરે વાહ. વિધાર્થી તેથી અમે સારવાર કરી શકે છે વાસ્તવિક શબ્દમાળા તરીકે એ? મને ખબર છે કારણ કે તે માત્ર એક સરનામું છે. જેમ, તમે કેવી રીતે આ લંબાઈ વિચાર કરશે શબ્દમાળા પસાર કરવામાં આવી રહી? જેસન HIRSCHHORN: કેવી રીતે કર્યું એક શબ્દમાળા લંબાઈ? Strlen. વિધાર્થી strlen, હા. પરંતુ તમે કારણ એ મૂકી શકો છો તે માટે દલીલ? જેસન HIRSCHHORN: તેથી strlen ચાર રચે સ્ટાર છે. અને તે ચાર રચે સ્ટાર નીચે છે, અને તે તે મળે ત્યાં સુધી ગણતરી રાખે છે બેકસ્લેશ 0. strlen વાસ્તવમાં હતી અન્ય કાર્યક્રમો અમે કોડ લાગતી હતી. તેને કોડ અન્ય સારો એક છે. તે એક છે, થોડી સરળ છે કારણ કે જો તમે તે વિશે વિચારો રહ્યા છીએ સરળ - હું માત્ર તેને મોટેથી કહ્યું - strlen નીચે નિર્દેશક અને રાખે જવું અને ગણતરી અને ત્યાં સુધી રાખવામાં આવેલ તમે બેકસ્લેશ 0 પહોંચે છે. વિધાર્થી બરાબર, તે મેળવી છે. જેસન HIRSCHHORN: તેથી શ્રેષ્ઠ 0 ક્વિઝ કાલે પર નસીબ. જો તમે કોઇ પ્રશ્નો હોય તો, હું પડશે આ પછી બહાર રહી. મને ઇમેઇલ મફત લાગે. જો તમે તમારા પોતાના ટીએફ સુધી પહોંચવાનો મારા વિભાગમાં, અથવા ન મળી મારા તમે તેને માંગો છો ઇમેઇલ કરો. તમે બહાર ફ્રીક કરવા માંગો છો અને માત્ર મોકલો, તો મને ઇમેઇલ, એક freakout ઇમેઇલ, હું પડશે , એક હસતો ચહેરો, જેમ કે, તમને પાછા મોકલી અથવા, જેમ કે, મજાક અથવા કંઈક. તેથી પણ આ કરી શકો છો. સારા નસીબ ફરી, અને હું પડશે બધા આગામી સપ્તાહે તમે જુઓ.