[Powered by Google Translate] JORDAN JOZWIAK: પ્રકાર કાસ્ટિંગ, તો તેનો સરળ અર્થમાં છે
દ્વારા અમુક માહિતી એક કોમ્પ્યુટર અર્થઘટન બદલી માર્ગ
સર્વથા અથવા બાહ્ય રીતે તેની માહિતી પ્રકાર બદલાતી રહે છે.
એક ફ્લોટ, અથવા તેનાથી ઊલટું માટે પૂર્ણાંક બદલવા જેવા કે.
માટે પ્રકાર કાસ્ટિંગ સમજવા, અમે જરૂર
મૂળભૂત સાથે શરૂ -
માહિતી પોતાને પ્રકારો.
જેમ કે C કોમ્પ્યુટર ભાષાઓમાં, બધા ચલો અમુક પ્રકારના હોય છે
માહિતી પ્રકાર કે કેવી રીતે કોમ્પ્યુટર તેવી જ રીતે, અને નક્કી કરે છે કે ના
વપરાશકર્તા કે, ચલ દુભાષિત થાય છે.
પૂર્ણાંક, લાંબા લાંબા ફ્લોટ, જેમ કે આંકડાકીય માહિતી પ્રકારો
ડબલ, બધા પોતાના અનન્ય લક્ષણો હોય છે અને છે
માટે રેન્જ અને ચોકસાઇ વિવિધ કિંમતો સ્પષ્ટ કરવા માટે વપરાય.
પ્રકાર કાસ્ટિંગ અમને જેવી અપૂર્ણાંક બિંદુ નંબર લેવા માટે પરવાનગી આપે છે
3.14 અને અક્ષાંશ પહેલાનો ભાગ મેળવવા માટે, આ કિસ્સામાં 3,
તે પૂર્ણાંક પર કાસ્ટિંગ દ્વારા.
ચાલો આ ઇંગલિશ ભાષા સંક્ષિપ્ત માટે એક ઉદાહરણ લઇ
પ્રકારની સમીક્ષા, અને કેવી રીતે પ્રકાર કાસ્ટિંગ બદલી શકો છો
જે રીતે આપણે માહિતી ભાગ અર્થઘટન.
માહિતી માટે, ચાલો સંકેતો અહીં લે છે.
મેં હમણાં જ આ કાળજીપૂર્વક રૂપરેખાંકિત રેખાઓ નો સંદર્ભ લો
પ્રતિકો, પરંતુ કોઈકને જેઓ ઇંગલિશ ભાષા જાણે છે,
તમે તરત જ જાણ છે કે તેઓ ખરેખર, અક્ષરો.
તમે સર્વથા માહિતી પ્રકાર સમજી.
અક્ષરોના આ શબ્દમાળાને અંતે છીએ અમે બે જોઈ શકો છો
વિવિધ શબ્દો, તેના પોતાના અર્થ સાથે દરેક.
ત્યાં સંજ્ઞા, પવન બહાર મારામારી તરીકે પવન, છે.
અને ત્યાં ક્રિયાપદ, પવન છે, જેમ હું જરૂર
મારા એનાલોગ ઘડિયાળ અટકે છે.
આ એક રસપ્રદ ઉદાહરણ છે, કારણ કે અમે જોઈ શકો છો
પ્રકાર કે અમે અમારી માહિતી માટે સોંપો, સંજ્ઞા કે કેવી રીતે
ક્રિયાપદ ફેરફારો, અમે કેવી રીતે કરે છે કે માહિતી વાપરો -
શબ્દ પવન અથવા પવન તરીકે.
જોકે કમ્પ્યુટર વ્યાકરણ અને ભાગો વિશે કાળજી નથી
ઇંગલિશ વાણી, એ જ મૂળભૂત સિદ્ધાંત લાગુ પડે છે.
એટલે કે, અમે ચોક્કસ અર્થઘટન બદલી શકો છો
સમાન દ્વારા મેમરીમાં સ્ટોર થયેલ માહિતી ફક્ત તે માટે નિર્ણાયક
વિવિધ પ્રકાર.
અહીં 32-bit સૌથી સામાન્ય પ્રકારના કદ છે
સિસ્ટમ સંચાલન.
અમે 1 બાઇટ પૂર્ણાંક, અને 4 બાઇટ્સ અંતે ફ્લોટ, લાંબા ખાતે ચાર રચે છે
લાંબી અને 8 બાઇટ્સ ખાતે બેવડી.
કારણ કે એક પૂર્ણાંક અપ 4 બાઇટ્સ લે છે, તે 32 બિટ્સ લેશે
જ્યારે તે મેમરીમાં દ્વિસંગી શ્રેણી તરીકે સંગ્રહાયેલ છે
zeros અને શૈલીઓનો.
અમારા ચલ સુધી એક પ્રકાર પૂર્ણાંક, તરીકે રહે છે
કોમ્પ્યુટર હંમેશા તે મુદ્દાઓ પર અને zeros માંથી રૂપાંતરિત કરશે
મૂળ અનેક દ્વિસંગી.
જોકે, અમે સૈદ્ધાંતિક તે 32 ચૂક્યું શકે
બુલિયન પ્રકારોની શ્રેણીની માં બિટ્સ.
અને પછી કોમ્પ્યુટર લાંબા સમય સુધી નંબર જોઈ, પરંતુ
તેના બદલે zeros અને મુદ્દાઓ પર એક સંગ્રહ.
અમે પણ એક અલગ આંકડાકીય તે માહિતી વાંચવાનો પ્રયત્ન કરી શકે છે
ટાઇપ, અથવા ચાર અક્ષરો શબ્દમાળા તરીકે.
જ્યારે કાસ્ટિંગ નંબરો સાથે વ્યવહાર, તો તમે કેવી રીતે ધ્યાનમાં લેવું જ જોઈએ
તમારી કિંમત ઓફ પ્રીસિઝન અસર થશે.
ધ્યાનમાં રાખો કે ચોકસાઇ જ રહી શકે છે,
અથવા તમે ચોકસાઇ ગુમાવી શકો છો, પરંતુ તમે ક્યારેય ચોકસાઇ કરી શકે છે.
ચાલો ત્રણ સૌથી સામાન્ય માર્ગો તમે આ કરી શકો તે માટે પસાર થવું
ચોકસાઇ ગુમાવી બેસે છે.
પૂર્ણાંક પર એક ફ્લોટ કાસ્ટિંગ બધું કાપી નાંખવાની રીત કારણ બનશે
આ દશાંશ બિંદુ પછી, જેથી તમે છોડી રહ્યાં છો
સમગ્ર નંબર સાથે.
જો અમે આ ફ્લોટ એક્સ જે 3.7 જેટલી થશે લેવા, અમે ભૂમિકા કરી શકો છો
આ ચલ પૂર્ણાંક પર એક્સ ફક્ત માં પૂર્ણાંક લેખન
કૌંસ.
જ્યારે પણ આપણે આ શબ્દ અહીં વાપરવા માટે, અમે અસરકારક રીતે કરશો
ત્રણ કિંમત શકાય મદદથી કારણ કે અમે કાપવામાં કર્યા છે
આ દશાંશ બિંદુ પછી બધું.
અમે પણ પૂર્ણાંક પર લાંબા લાંબા કન્વર્ટ કરી શકો છો, કે જે કરશે
તેવી જ રીતે ઉચ્ચ માત્રાના બીટ્સ એક નુકશાન પરિણમે છે.
લાંબી લાંબી અપ 8 બાઇટ્સ, અથવા મેમરી માં 64 બિટ્સ લે છે.
તેથી જ્યારે અમે તેને પૂર્ણાંક છે કે જે માત્ર 4 બાઇટ્સ, કે 32 હોય ભૂમિકા
બિટ્સ, અમે અનિવાર્યપણે બોલ તમામ બીટ્સ કે કકડો છે
ઊંચા દ્વિસંગી કિંમતો પ્રતિનિધિત્વ કરે છે.
તમે પણ એક ફ્લોટ, કે જે આપશે એક ડબલ ભૂમિકા કરી શકે છે
તમે નજીકના શક્ય વગર ડબલ માટે ફ્લોટ
જરૂરી rounding તે.
અમારા પૂર્ણાંક રૂપાંતર લાંબા લાંબા, નુકશાન માટે સમાન
ચોકસાઇ છે કારણ કે ડબલ વધુ માહિતી ધરાવે છે.
એક ડબલ તમે 53 નોંધપાત્ર બિટ્સ સંગ્રહવા માટે પરવાનગી આપશે,
16 આશરે નોંધપાત્ર અંકો.
જ્યારે ફ્લોટ માત્ર તમે 24 સંગ્રહવા માટે પરવાનગી આપશે
નોંધપાત્ર બિટ્સ, સાત આશરે નોંધપાત્ર અંકો.
આ છેલ્લા બે કિસ્સાઓમાં, તે મદદરૂપ થઈ માટે વિચારી શકે છે
ફોટો માપ બદલવાની તરીકે કાસ્ટિંગ લખો.
જ્યારે તમે એક વિશાળ કદ એક નાના કદ પર જાઓ, તમે જોઈ શકો છો
વસ્તુઓ સ્પષ્ટ કારણ કે તમે માહિતી હારી
પિક્સેલ્સ સ્વરૂપ છે.
અમે પ્રકાર કાસ્ટિંગ પણ મુશ્કેલીનું કારણ બની શકે છે જ્યારે
ફ્લોટ્સ માટે ints આપ્યા હતા.
કારણ કે મશીન 32-bit ફ્લોટ્સ માત્ર 24 છે
નોંધપાત્ર બિટ્સ, તેઓ ચોક્કસ કિંમતો નથી પ્રતિનિધિત્વ કરી શકે છે
24, અથવા 16777217 શક્તિ માટે 2 બનાવ્યા.
હવે આપણે સ્પષ્ટ અને ગર્ભિત કાસ્ટિંગ વિશે વાત કરો.
સ્પષ્ટ કાસ્ટિંગ છે જ્યારે અમે કૌંસ માં પ્રકાર લખવા
એક ચલ નામ પહેલાં.
એક ઉદાહરણ તરીકે, પહેલા અમને પહેલાં કૌંસ માં પૂર્ણાંક લખ્યું અમારા
ચલ x તરતા રહે છે.
આ રીતે, અમે પૂર્ણાંક કિંમત મેળવવા માટે, તે
3.7 ની કાપવામાં કિંમત -
3.
ગર્ભિત કાસ્ટિંગ છે ત્યારે કમ્પાઇલર આપોઆપ બદલી
એક સુપર પ્રકાર માટે સમાન પ્રકારની, અથવા અમુક અન્ય સૉર્ટ કરે છે
વપરાશકર્તા લખવા માટે જરૂર વિના નિર્ણાયક
કોઈપણ વધારાની કોડ.
ઉદાહરણ તરીકે, જ્યારે અમે 5 અને 1.1 ઉમેરવા માટે, અમારા કિંમતો પહેલાથી જ છે
પ્રકારો તેમની સાથે સંકળાયેલ છે.
5 આ પૂર્ણાંક હોય છે, જ્યારે 1.1 એક ફ્લોટ છે.
ક્રમમાં તેમને ઉમેરવા માટે, કમ્પ્યુટર ફ્લોટ માં 5 વ્યક્ત,
જે માં 5.0 લખવા જેવી જ વસ્તુ કરવામાં આવ્યો હતો
પ્રથમ સ્થાને.
પરંતુ આ રીતે આપણે 5 ફ્લોટ, અથવા 5.0, વત્તા શું કહે છે પહેલાથી જ
એક ફ્લોટ, 1.1, અને ત્યાંથી અમે ખરેખર આ ઉમેરી શકો છો
કિંમતો અને કિંમત 6.1 મેળવો.
ગર્ભિત કાસ્ટિંગ પણ અમને ચલો સોંપવા માટે પરવાનગી આપે છે
દરેક અન્ય વિવિધ પ્રકારોમાં.
અમે હંમેશા વધુ એક ઓછી ચોક્કસ પ્રકાર સોંપી શકો છો
ચોક્કસ એક.
હમણાં પૂરતું, જો આપણે ડબલ એક્સ, અને પૂર્ણાંક વાય છે -
અને આ કોઈ કિંમતો કે અમે તેમને સુયોજિત કરવા માટે કરી શકે છે -
અમે કહી શકીએ એક્સ વાય સમકક્ષ હોય છે.
અમે કારણ કે ડબલ પૂર્ણાંક કરતાં વધુ ચોકસાઇ ધરાવે છે તેથી,
કોઈપણ માહિતીને ગુમાવી નથી.
બીજી તરફ, તે જરૂરી કહેવું યોગ્ય નહીં હોય
વાય એક્સ સમકક્ષ છે, કારણ કે ડબલ મોટી કિંમત કરતાં હોય શકે છે
આ પૂર્ણાંક.
અને તેથી પૂર્ણાંક બધી પકડી શકે નહિં
ડબલ સંગ્રહાયેલ જાણકારી.
ગર્ભિત કાસ્ટિંગ પણ જેવી છે સરખામણી ઓપરેટરો ઉપયોગમાં
કરતા વધારે, કરતાં ઓછી છે, અથવા સમાનતા ઓપરેટર.
આ રીતે આપણે 5.1 if કહી શકો 5 કરતા વધારે છે, અને અમે વિચાર
સાચું પરિણામ.
Because 5 પૂર્ણાંક છે, પરંતુ તે ફ્લોટ માટે ભૂમિકા આવશે કરવા માટે
શકાય 5.1 ફ્લોટ તુલનામાં, અમે કહીએ છીએ હો 5.1 છે
5.0 કરતાં વધારે હતો.
આ જ કહેતા if 2.0 2 સમકક્ષ સમકક્ષ સાથે સાચી પડે છે.
અમે પણ સાચું વિચાર, હો કારણ કે કોમ્પ્યુટર ભૂમિકા કરશે
2 પૂર્ણાંક ફ્લોટ અને પછી કહેવું 2.0 2.0 સમકક્ષ સમકક્ષ,
આ સાચું છે.
ભૂલશો કે અમે પણ ints અને અક્ષરો વચ્ચે ભૂમિકા શકે,
અથવા તે ASCII કિંમતો.
અક્ષરો પણ બાઈનરી ઘટાડી શકાય જરૂર છે, કે જે તમને શા માટે છે
સરળતાથી અક્ષરો અને તેમના વચ્ચે રૂપાંતરિત કરી શકો છો
તે ASCII કિંમતો.
આ વિશે વધુ જાણવા માટે, તે ASCII પર અમારા વિડિઓ તપાસો.
જ્યારે તમે થોડો સમય કેવી રીતે માહિતી સંગ્રહિત છે તે વિશે વિચારો,
તે અર્થમાં ઘણો બનાવવા શરૂ થાય છે.
તે પવન અને પવન વચ્ચે તફાવત જેમ જ છે.
આ માહિતી એ જ છે, પણ પ્રકાર બદલી શકો છો અમે કેવી રીતે
તે અર્થઘટન.
મારું નામ જોર્ડન Jozwiak, આ cs50 છે.