[Powered by Google Translate] JORDAN JOZWIAK: প্রকার কাস্টিং, সহজ অর্থে, একটি
উপায় দ্বারা কিছু তথ্য একটি কম্পিউটার এর ব্যাখ্যা পরিবর্তন
পরোক্ষভাবে বা স্পষ্টভাবে তার ডাটা টাইপ পরিবর্তন করার.
একটি float, অথবা উলটোটা যাও কোন int পরিবর্তন যেমন.
যাও টাইপ কাস্টিং বোঝেন, আমরা প্রয়োজন
মূলসূত্র সঙ্গে শুরু -
তথ্য ধরনের নিজেরাই.
C-এর মতো কম্পিউটার ভাষায়, সব কিছু ভেরিয়েবল সাজান আছে
ডাটা টাইপ যে নির্ণয় কিভাবে কম্পিউটার, এবং অনুরূপভাবে
ব্যবহারকারী, যে ব্যাখ্যা পরিবর্তনশীল.
সংখ্যাসূচক যেমন কোন int, দীর্ঘ দীর্ঘ, float এবং হিসাবে ধরনের তথ্য
ডবল, সব তাদের নিজস্ব অনন্য বৈশিষ্ট্য আছে এবং আছে
যাও রেঞ্জ এবং স্পষ্টতা নানারকম মান চিহ্নিত করা হয়.
প্রকার কাস্টিং আমাদের মত একটি ফ্লোটিং পয়েন্ট সংখ্যা নিতে পারবেন
3.14 এবং দশমিক আগে অংশ পেতে, এই ক্ষেত্রে 3,
দ্বারা কোন int এটি নিক্ষেপণ.
চলুন শুরু করা যাক ইংরেজি ভাষা থেকে একটি সংক্ষিপ্ত জন্য একটি উদাহরণ:
ধরণের পর্যালোচনা, এবং কিভাবে টাইপ কাস্টিং পরিবর্তন করতে পারেন
আমাদের তথ্য এক টুকরা ব্যাখ্যা করা.
তথ্য জানার জন্য, আমি কি এখানে প্রতীক নিতে.
আমি ঠিক এই হিসাবে যত্নসহকারে কনফিগার লাইন পড়ুন
চিহ্ন, কিন্তু ইংরেজি ভাষা হিসাবে এমন কারো জন্য যিনি জানেন,
আপনি অবিলম্বে স্বীকার করি যে তারা সত্য হয়, চিঠি.
আপনি পরোক্ষভাবে তথ্য টাইপ বোঝা.
অক্ষর এই স্ট্রিং এ জন্যে আমরা দুটি দেখতে পারেন
ভিন্ন শব্দ, তার নিজস্ব অর্থ সঙ্গে প্রতিটি.
বিশেষ্য, এ হালচাল বাইরে হিসাবে বায়ু, আছে.
এবং ক্রিয়া, বায়ু আছে, হিসাবে আমি প্রয়োজন
আমার অ্যানালগ ঘড়ি তলিয়ে.
এটি একটি আকর্ষণীয় উদাহরণ, কারণ আমরা দেখতে পারেন
কিভাবে টাইপ যে আমরা আমাদের তথ্য ধার্য, কিনা বা বিশেষ্য
ক্রিয়া, পরিবর্তন কিভাবে আমরা যে তথ্য ব্যবহার -
শব্দ হিসাবে বায়ু বা বায়ু.
যদিও একটি কম্পিউটার এবং ব্যাকরণ অংশের যত্ন সম্পর্কে না
ইংরেজি বাক, একই মূল নীতি প্রযোজ্য.
যে, আমরা সঠিক ব্যাখ্যা পরিবর্তন করতে পারেন
একই দ্বারা কণ্ঠস্থ তথ্য শুধুমাত্র একটি এটি নিক্ষেপণ
বিভিন্ন প্রকার.
এখানে 32 বিট হয় সবচেয়ে সাধারণ ধরনের মাপ
সিস্টেম হয়েছে.
আমরা 1 বাইট, 4 বাইট int-এ এবং float, একটি দীর্ঘ সময়ে একটি গৃহস্থালি আছে
লম্বা এবং 8 বাইট একটি ডবল.
কারণ কোন int লাগে 4 বাইট আপ, এটা 32 বিট আপ নিতে হবে
যখন এটি মেমরির এমন একটি বাইনারি সিরিজ হিসাবে সংরক্ষিত হয়
এর zeros এবং বেশী.
একটি টাইপ int, হিসাবে আমাদের পরিবর্তনশীল হিসাবে দীর্ঘ হিসাবে অবশেষ
কম্পিউটার সবসময় বেশী এবং zeros থেকে রূপান্তর করা
মূল নম্বর মধ্যে বাইনারি.
যাইহোক, আমরা যারা তাত্ত্বিকভাবে 32 নিক্ষেপ করতে পারে
বুলিয়ান ধরনের একটি সিরিজের মধ্যে বিট.
কম্পিউটার এবং তারপর একটি নম্বর নেই, কিন্তু দেখতে হবে
পরিবর্তে zeros এবং বেশী একটা সংগ্রহ.
আমরা একটি ভিন্ন সাংখ্যিক হিসাবে যে তথ্য পড়তে চেষ্টা করে দেখতে পারেন
টাইপ করুন অথবা এমনকি হিসাবে চার অক্ষর বিশিষ্ট স্ট্রিং.
কাস্টিং সংখ্যার সঙ্গে যখন আচরণ, আপনি কিভাবে বিবেচনা করতে হবে
আপনার স্পষ্টতা মান প্রভাবিত হবে.
মনে রাখবেন যে স্পষ্টতা একই থাকতে পারেন,
অথবা আপনি স্পষ্টতা হারান, কিন্তু আপনি কখনই স্পষ্টতা অর্জন করতে পারবেন.
এর মাধ্যমে যাক তিনটি সবচেয়ে সাধারণ উপায় যে আপনি যা করতে পারেন জন্য যান
স্পষ্টতা হারান.
কোন int একটি float কাস্টিং সবকিছু truncation কারণ হবে
দশমিক বিন্দু পরে, তাই আপনি বাম করছি
সঙ্গে পুরো নম্বর.
যদি আমরা float x 3.7 যা সমান হবে, আমরা নিক্ষেপ করতে পারেন
এই কোন int x এর দ্বারা পরিবর্তনশীল সহজভাবে int-এ লেখা
প্রথম বন্ধনী.
যখনই আমরা এই শব্দটি ব্যবহার করে এখান, কার্যকরীভাবে আমরা করব
মান তিনটি কারণ আমরা ছিন্ন করেছি ব্যবহার করা হবে
দশমিক বিন্দু পরে সবকিছু.
আমরা একটি int-দীর্ঘ দীর্ঘ, রূপান্তর করতে যা করবে না
উচ্চ ক্রম বিট ক্ষতি একভাবে নেতৃত্ব.
একটি দীর্ঘ দীর্ঘ সময় লাগে 8 বাইট, বা মেমরি মধ্যে 64 বিট আপ.
সুতরাং যখন আমরা কোন int যা শুধুমাত্র 4 বাইট, 32 বা আছে তা নিক্ষেপ
বিট, মূলত আমরা কাটা হয় সব বিট যে বন্ধ
উচ্চতর বাইনারি মান প্রতিনিধিত্বকারী.
এছাড়াও আপনি একটি float, যা করা হবে একটি ডবল নিক্ষেপ করতে পারে
আপনি ডবল সর্বনিকটবর্তী সম্ভব ছাড়া float
অগত্যা rounding এটি.
অনুরূপ আমাদের int-এ রূপান্তর দীর্ঘ দীর্ঘ, ক্ষতিগ্রস্ত যাও
স্পষ্টতা কারণ হল, একটি ডবল আরো তথ্য রয়েছে.
একটি ডবল আপনি 53 বিট উল্লেখযোগ্য ধারণ করার অনুমতি দিতে হবে,
প্রায় 16 সংখ্যা উল্লেখযোগ্য.
যেহেতু আপনি একটি float শুধুমাত্র 24 ধারণ করার অনুমতি দেবে
গুরুত্বপূর্ণ বিট, প্রায় সাত সংখ্যা উল্লেখযোগ্য.
এই দুই ক্ষেত্রে, মনে করে সাহায্যকারী হতে পারে
resizing একটি ছবির হিসাবে কাস্টিং টাইপ করুন.
আপনি যখন একটি বড় আকারের থেকে যান এবং একটি ছোট আকারের, আপনি না দেখতে পারেন
things পরিষ্কারভাবে হিসাবে কারণ আপনার তথ্য হারিয়ে
পিক্সেলে আকারে.
এছাড়াও কাস্টিং প্রকার ঝামেলা হতে পারে যখন আমরা
floats যাও ints নিক্ষেপ.
যেহেতু শুধুমাত্র একটি 32 বিট মেশিনের floats 24 আছে
গুরুত্বপূর্ণ বিট, তারা মান সঠিকভাবে উপস্থাপন করতে পারেন না
24, 16777217 বা ক্ষমতা বেশী 2.
এখন আসুন স্পষ্ট এবং অন্তর্নিহিত কাস্টিং সম্পর্কে কথা বলুন.
কাস্টিং স্পষ্ট হয় যখন আমরা প্রথম বন্ধনী টাইপ লিখুন
আগে একটি পরিবর্তনশীল নাম.
আগে একটি উদাহরণ হিসাবে, আমরা মৌখিক int-লিখেছে আগে আমাদের
পরিবর্তনশীল x ভাসা.
এই ভাবে, আমরা int মান পেতে,
3.7 মান ছেঁটে ফেলা হয়েছে -
3.
অন্তর্নিহিত কাস্টিং হয় যখন স্বয়ংক্রিয়ভাবে কম্পাইলার পরিবর্তন
একটি সুপার টাইপ একই ধরনের, অথবা কিছু অন্যান্য সাজানোর সমাপন
ব্যবহারকারী যাও লিখুন প্রয়োজন ছাড়া নিক্ষেপণ
কোনো অতিরিক্ত কোড.
উদাহরণস্বরূপ, যখন আমরা 5 এবং 1.1 যোগ করুন, ইতিমধ্যে আমাদের মান আছে
প্রকারের সাথে জড়িত.
5 হয় কোন int, যেহেতু 1.1 একটি float.
যাতে তাদের যোগ করুন, কম্পিউটারের একটি float মধ্যে 5 কাস্ট,
যা হয়েছে সালে 5.0 লেখা হিসাবে একই জিনিস হবে
প্রথম জায়গা.
কিন্তু এই ভাবে আমরা float 5, অথবা 5.0, প্লাস কি বলতে ইতিমধ্যে ছিল
সেখান থেকে একটি float, 1.1, এবং আমরা আসলে এইসব যুক্ত করতে পারেন
মান 6.1 পেতে মান.
অন্তর্নিহিত কাস্টিং আমাদের ভেরিয়েবেল্স ধার্য করতে পারবেন
প্রতিটি অন্যান্য বিভিন্ন ধরনের.
আমরা সবসময় একটি মধ্যে আরো একটি কম সঠিক টাইপ ধার্য করতে পারেন
সুনির্দিষ্ট এক.
উদাহরণস্বরূপ, যদি আমরা একটি ডবল x, ও কোন int y আছে -
এবং এইসব কোনো মান যে আমরা তাদের সেট করতে পারে -
আমরা x y সমান বলতে পারেন.
কারণ ডবল কোন int তুলনায় আরো স্পষ্টতা আছে, তাই আমরা
কোন তথ্য নষ্ট হবে.
অন্য দিকে, অগত্যা এটা বলার সঠিক হবে না
y x সমান, কারণ ডবল একটি বৃহত্তর তুলনায় মান থাকতে পারে
পূর্ণসংখ্যা.
এবং তাই পূর্ণসংখ্যা যাও সব রাখা সক্ষম নাও হতে পারে
তথ্য ডবল সঞ্চিত.
অন্তর্নিহিত কাস্টিং তুলনা অপারেটরদের ক্ষেত্রেও ব্যবহার করা হয় যেমন
এর চেয়ে বড়, কম, বা সমতা অপারেটর.
এই ভাবে আমরা 5.1 যদি না হয় 5 তার চেয়ে অনেক বেশী, এবং আমরা
ফলে সত্য.
5 কারণ হল কোন int, কিন্তু এটি একটি float যাও যাতে নিক্ষেপ করা হবে
float 5.1 তুলনা করা, আমরা 5.1 হয় বলতে চাই
5.0 অধিক.
একই বলছে যদি 2.0 2 সমান সমান সঙ্গে সত্য.
আমরা পেতে সত্য, কারণ কম্পিউটার নিক্ষেপ করা চাই
পূর্ণসংখ্যা 2 এবং তারপর ভাসা 2.0 2.0 সমান সমান বলে,
এটি সত্য.
কি যে আমরা ints এবং অক্ষরের মধ্যে নিক্ষেপ করতে পারেন ভুলবেন না,
বা ASCII মান.
অক্ষর প্রয়োজন যাও বাইনারি হ্রাস করা হবে, যা আপনি কেন
সহজে অক্ষর এবং তাদের নিজ নিজ মধ্যে রূপান্তর করতে পারেন
ASCII মান.
এই সম্পর্কে আরো জানতে, ASCII পরীক্ষা আমাদের ভিডিও আউট.
যখন আপনি কিভাবে তথ্য সঞ্চিত আমার মনে হয় একটি মুহূর্ত নিতে,
এটা ধারণা অনেক করা শুরু হয়.
এটা বায়ু এবং বাতাসের মধ্যে পার্থক্য করার মত.
ডেটা একই, কিন্তু টাইপ পরিবর্তন করতে পারেন কিভাবে আমরা
এটা ব্যাখ্যা করা.
আমার নাম জর্দান Jozwiak, এই cs50.