সি প্রোগ্রামিং ভাষায় "চর * নাম" এবং "চর * নাম" এর মধ্যে পার্থক্য কী?


উত্তর 1:

কোন পার্থক্য নেই।

তবে, আমার মতে, দীর্ঘ সময়ের সি / সি ++ / সি # বিকাশকারী হিসাবে আপনার ব্যবহার করা উচিত

চর * নাম;

এর কারণ হ'ল আপনার "নাম" এর ডেটাটাইপটি "পয়েন্টার-টু-চর" হওয়াতে অভ্যস্ত হওয়া উচিত। তারকাচিহ্নটি "চর" এর পাশে স্থাপন করায় এই মনোযোগের দিকে নজর দেওয়া হয় যে নক্ষত্রটি ডেটাটাইপের অংশ হিসাবে তৈরি করে।


উত্তর 2:

এখানে কোন পার্থক্য নেই. এটি কেবল স্টাইলের পছন্দের বিষয়।

******************************>

আমি সিলভেইন রডরিগের প্রতিক্রিয়া সম্পর্কে মন্তব্য করতে সক্ষম বলে মনে করি না এবং আমি মনে করি এটির একটি প্রতিক্রিয়া প্রয়োজন কারণ এটি মূলত ভুল। * নামটি একটি ডিসেরফেরিং অপারেটর (ইন্ডিরিশন অপারেটর) হওয়ার জন্য এর অপারেন্ডে অবশ্যই পয়েন্টার টাইপ থাকতে হবে।

আইএসও স্ট্যান্ডার্ড ড্রাফ্টে এন 1570 "চর *" কে "উত্পন্ন ধরণের" (6.2.5 প্রকার) হিসাবে বর্ণনা করা হয়েছে

এন 1570 থেকে:

6.2.5 প্রকার

- একটি পয়েন্টার ধরণ কোনও ফাংশন টাইপ বা কোনও অবজেক্টের ধরণ থেকে প্রাপ্ত হতে পারে, এটি ডাকা হয়

রেফারেন্স টাইপ। একটি পয়েন্টার টাইপ এমন একটি বস্তুর বর্ণনা করে যার মান একটি রেফারেন্স সরবরাহ করে

রেফারেন্সড টাইপের একটি সত্তায়। রেফারেন্সড টাইপ টি থেকে প্রাপ্ত একটি পয়েন্টার প্রকার

কখনও কখনও বলা হয় ‘‘ টি তে পয়েন্টার ’’। একটি থেকে একটি পয়েন্টার ধরণের নির্মাণ

রেফারেন্সড টাইপকে বলা হয় ‘‘ পয়েন্টার টাইপ ডেরাইভেশন ’’। একটি পয়েন্টার টাইপ একটি সম্পূর্ণ

বস্তুর ধরণ

6.5.3.2 ঠিকানা এবং ইন্ডিরিশন অপারেটর

সীমাবদ্ধতাসমূহ

2 অ্যানারি * অপারেটরের অপারেন্ডের পয়েন্টার টাইপ থাকবে।


উত্তর 3:

নিম্নলিখিত পরিস্থিতির জন্য কোনও পার্থক্য ছাড়াই। মনে করুন আপনি একাধিক পয়েন্টার ভেরিয়েবল নির্ধারণ করছেন। এই দুটি লাইনের তুলনা এবং বিপরীতে:

চর * পি, * পি 2, * পি 3; // এটি আপনার মনে হয় যা করে।
চর * পি, পি 2, পি 3; // এটি আপনি যা ভাবেন তা করে না।

এই দুটি লাইন খুব আলাদা জিনিস করে। এখানে দ্বিতীয় লাইনটি পয়েন্টকে একটি পয়েন্টার ভেরিয়েবল হিসাবে ঘোষণা করে, তবে p2 এবং p3 পয়েন্টার হিসাবে ঘোষিত হয় না, কেবল টাইপের চরের সাধারণ ভেরিয়েবল। এটি প্রযুক্তিগতভাবে ভুল নয় (প্রকারের চরের সাধারণ ভেরিয়েবলগুলি বিশেষভাবে নির্ভরযোগ্য বা দরকারী নয়); এটি কেবল অত্যন্ত বিভ্রান্তিকর।

উপরের দ্বিতীয় স্টাইলটি - * টাইপ নামের আরও কাছাকাছি রাখতে - প্রায়শই কোডে প্রদর্শিত হয় তবে একাধিক পয়েন্টার ওয়ার্স ঘোষণার সময় বিভ্রান্তিমূলক ঘোষণা তৈরির সম্ভাবনা রয়েছে, যেমন উপরে বর্ণিত।

যাইহোক, প্রভাবটি অর্জনের একটি উপায় রয়েছে যা সম্ভবত উপরের দ্বিতীয় লাইনের দ্বারা পছন্দ হয়েছে। প্রথমে পয়েন্টার টাইপ তৈরি করতে টাইপডেফ ব্যবহার করুন।

টাইপডিফ চর * সিপিটিআর;

এখন আপনি আরও দক্ষতার সাথে একাধিক পয়েন্টার ঘোষণা করতে পারেন:

সিপিটিআর পি, পি 2, পি 3;