প্রশ্ন ট্যাগ «language-lawyer»

প্রোগ্রামিং ভাষা এবং পরিবেশের আনুষ্ঠানিক বা অনুমোদনের নির্দিষ্টকরণের জটিলতা সম্পর্কে প্রশ্নের জন্য।

8
অপরিজ্ঞাত আচরণের শাখাগুলি কি অ্যাক্সেসযোগ্য এবং মৃত কোড হিসাবে অনুকূলিত হতে পারে?
নিম্নলিখিত বিবৃতি বিবেচনা করুন: *((char*)NULL) = 0; //undefined behavior এটি পরিষ্কারভাবে অনির্ধারিত আচরণকে আহ্বান করে। কোনও প্রদত্ত প্রোগ্রামে এই জাতীয় বক্তব্যটির অস্তিত্বের অর্থ কি পুরো প্রোগ্রামটি অনির্ধারিত হয়েছে বা নিয়ন্ত্রণ প্রবাহ এই বিবৃতিতে আঘাতের পরে কেবল আচরণটি অপরিজ্ঞাত হয়ে যায়? ব্যবহারকারী কখনও সংখ্যায় প্রবেশ না করায় নিম্নলিখিত প্রোগ্রামটি কি সঠিকভাবে …

2
রোজলিনে অ্যাসিঙ্ক স্টেট মেশিন ক্লাসগুলি (এবং স্ট্রাক্ট নয়) কেন?
আসুন এই খুব সহজ async পদ্ধতি বিবেচনা করুন: static async Task myMethodAsync() { await Task.Delay(500); } আমি যখন ভিএস2013 (প্রাক রোজলিন সংকলক) দিয়ে এটি সংকলন করি তখন উত্পন্ন রাষ্ট্র-মেশিনটি একটি কাঠামো। private struct <myMethodAsync>d__0 : IAsyncStateMachine { ... void IAsyncStateMachine.MoveNext() { ... } } আমি যখন এটি ভিএস2015 (রোজলিন) দিয়ে …

4
সংকলকটি ক্র্যাশ করা অনির্ধারিত আচরণযুক্ত সোর্স কোডের পক্ষে কি আইনী?
আসুন আমি বলি যে আমি কিছু বাজে লেখা সি ++ উত্স কোড সংকলন করতে যাচ্ছি যা অপরিজ্ঞাত আচরণের জন্য প্রার্থনা করে এবং তাই (তারা যেমন বলে) "কিছু ঘটতে পারে"। সি ++ ভাষার স্পেসিফিকেশন "কনফর্মেন্ট" সংকলনে গ্রহণযোগ্য হিসাবে বিবেচনা করে, এই দৃশ্যে "কিছু" কি সংকলক ক্রাশিং (বা আমার পাসওয়ার্ডগুলি চুরি করে, …

2
সি ++ 0 এক্স-এ নালপ্ট্রার মুছে ফেলা কি এখনও নিরাপদ?
ইন c++03এটা কোনো প্রভাব নেই যে একটি নাল পয়েন্টার মোছার চমত্কার স্পষ্ট। প্রকৃতপক্ষে, এতে স্পষ্টভাবে বলা হয়েছে §5.3.5/2: যে কোনও বিকল্পে, মুছার অপারেন্ডের মান যদি নাল পয়েন্টার হয় তবে ক্রিয়াকলাপের কোনও প্রভাব নেই। তবে এই খণ্ডটির জন্য বর্তমান খসড়াটিc++0x অনুপস্থিত বলে মনে হচ্ছে। খসড়াটির বাকী অংশে আমি কেবল বাক্যগুলি খুঁজে …

6
খাঁটি ফাংশন: "কোনও পার্শ্ব প্রতিক্রিয়া" "কি সর্বদা একই আউটপুট দেয়, একই ইনপুট দেয়" বোঝায়?
দুটি শর্ত যা একটি ফাংশনটিকে pureনিম্নলিখিত হিসাবে সংজ্ঞায়িত করে: কোনও পার্শ্ব প্রতিক্রিয়া নেই (যেমন শুধুমাত্র স্থানীয় সুযোগে পরিবর্তনের অনুমতি রয়েছে) সর্বদা একই ইনপুট দেওয়া একই আউটপুট ফেরত প্রথম শর্তটি যদি সর্বদা সত্য হয় তবে দ্বিতীয় শর্তটি কি কখনও সঠিক নয়? অর্থাত্ প্রথম শর্তে এটি কি কেবল প্রয়োজনীয়?

3
সঠিক ঠিকানা সহ একটি পয়েন্টার এবং টাইপ করা এখনও সি ++ 17 থেকে সর্বদা একটি বৈধ পয়েন্টার?
( এই প্রশ্ন এবং উত্তর প্রসঙ্গে ।) সি ++ 17 স্ট্যান্ডার্ডের পূর্বে, নিম্নলিখিত বাক্যটি [বেসামাল ডটকম / পাউন্ড] / 3 এ অন্তর্ভুক্ত ছিল : টি টাইপের কোনও অবজেক্ট যদি কোনও ঠিকানা এ-তে অবস্থিত হয়, তবে সিভি টি * টাইপের একটি পয়েন্টার, যার মান ঠিকানা হ'ল সেই মানটি কীভাবে প্রাপ্ত হয়েছিল …

4
রিটার্ন সহ সি ++ তে কমা অপারেটরের বিভিন্ন আচরণ?
এটি ( কমা অপারেটর নোট করুন ): #include <iostream> int main() { int x; x = 2, 3; std::cout << x << "\n"; return 0; } ফলাফল 2 । তবে আপনি যদি returnকমা অপারেটরের সাথে ব্যবহার করেন তবে এটি: #include <iostream> int f() { return 2, 3; } int main() …

7
আমি 0 টির মানটির জন্য বিকল্প হিসাবে ব্যবহার করতে পারি?
আমি কি NULLএর মানটির প্রতিস্থাপন হিসাবে পয়েন্টারটি ব্যবহার করার অনুমতি দিচ্ছি?0 ? নাকি এই কাজ করে কোন ভুল আছে? উদাহরণস্বরূপ: int i = NULL; প্রতিস্থাপন হিসাবে: int i = 0; পরীক্ষা হিসাবে আমি নিম্নলিখিত কোডটি সংকলন করেছি: #include <stdio.h> int main(void) { int i = NULL; printf("%d",i); return 0; } …

5
সি তে অ্যারে সূচকগুলির মূল্যায়নের ক্রম (অভিব্যক্তি বনাম) গ
এই কোডটি দেখছেন: static int global_var = 0; int update_three(int val) { global_var = val; return 3; } int main() { int arr[5]; arr[global_var] = update_three(2); } কোন অ্যারে এন্ট্রি আপডেট হয়? 0 বা 2? সি এর স্পেসিফিকেশনের কোনও অংশ রয়েছে যা এই বিশেষ ক্ষেত্রে পরিচালনার নজির নির্দেশ করে?

3
std :: ভেক্টর (আব) স্বয়ংক্রিয় স্টোরেজ ব্যবহার করে
নিম্নলিখিত স্নিপেট বিবেচনা করুন: #include <array> int main() { using huge_type = std::array<char, 20*1024*1024>; huge_type t; } স্পষ্টতই এটি বেশিরভাগ প্ল্যাটফর্মে ক্রাশ হবে কারণ ডিফল্ট স্ট্যাকের আকারটি সাধারণত 20MB এর চেয়ে কম থাকে। এখন নিম্নলিখিত কোড বিবেচনা করুন: #include <array> #include <vector> int main() { using huge_type = std::array<char, 20*1024*1024>; …

2
অনুলিপি নির্মাণকারীতে সি ++ নামের স্থানের সংঘর্ষ
আমার কাছে নিম্নলিখিত কোড রয়েছে: namespace A { struct Foo { int a; }; } struct Foo { int b; }; struct Bar : public A::Foo { Bar(Foo foo) { c = foo.b; } int c; }; সি ++ সংকলকগুলি "সি = foo.b" এ অভিযোগ করে কারণ এ :: ফু …

3
সি ++ ডিক্লাইপ এবং প্রথম বন্ধনী - কেন?
বিষয়টি আগেও আলোচনা করা হয়েছিল , তবে এটি কোনও সদৃশ নয়। যখন কেউ মধ্যে পার্থক্য সম্পর্কে জিজ্ঞেস করে decltype(a)এবং decltype((a))স্বাভাবিক উত্তর - aএকটি পরিবর্তনশীল (a)একটি অভিব্যক্তি। আমি এই উত্তরটি সন্তুষ্ট নয়। প্রথমত, aপাশাপাশি একটি প্রকাশ। প্রাথমিক প্রকাশের বিকল্পগুলির মধ্যে অন্যদের মধ্যে অন্তর্ভুক্ত রয়েছে - (প্রকাশ) আইডি প্রকাশ আরও গুরুত্বপূর্ণ, ডিক্লাইপ …

6
2 বাইটকে স্বাক্ষরিত 16-বিট পূর্ণসংখ্যায় রূপান্তর করার সঠিক উপায় কী?
ইন এই উত্তর , zwol এই দাবিটি করেছেন: বাহ্যিক উত্স থেকে দুটি বাইট ডেটা 16-বিট স্বাক্ষরিত পূর্ণসংখ্যায় রূপান্তর করার সঠিক উপায় হ'ল সহায়ক ফাংশনগুলির সাথে: #include <stdint.h> int16_t be16_to_cpu_signed(const uint8_t data[static 2]) { uint32_t val = (((uint32_t)data[0]) << 8) | (((uint32_t)data[1]) << 0); return ((int32_t) val) - 0x10000u; } int16_t …

2
সি এর বিএনএফ ব্যাকরণ কেন ইনি-ঘোষকগণের খালি অনুক্রমের সাথে ঘোষণার অনুমতি দেয়?
সি এর বিএনএফ ব্যাকরণটি অনুসন্ধান করার সময়, আমি ভেবেছিলাম এটি অদ্ভুত যে কোনও ঘোষণার জন্য উত্পাদনের নিয়মটি এরকম দেখাচ্ছে ( https://cs.wmich.edu/~gapt/teaching/cs4850/sumII06/The%20syntax%20of% অনুসারে) 20C% 20in% 20Backus-Naur% 20 form.htm ): <declaration> ::= {<declaration-specifier>}+ {<init-declarator>}* ; এর জন্য কেন *কোয়ান্টিফায়ার (শূন্য বা আরও বেশি সংখ্যার অর্থ) ব্যবহার করবেন init-declarator? এই বিবৃতি হিসাবে যেমন …

2
কেন স্টাড :: হ্যাশকে নির্বিচারক হওয়ার গ্যারান্টি দেওয়া হয়নি?
পরবর্তীতে , আমরা N4140 (সি ++ 14 স্ট্যান্ডার্ড) ব্যবহার করি । .6 17.6.3.4 হ্যাশ প্রয়োজনীয়তা অনুসারে , প্রত্যাশিত মানটি k প্রোগ্রামের সময়কালের জন্য কেবল যুক্তির উপর নির্ভর করবে । [দ্রষ্টব্য: সুতরাং প্রোগ্রামটির প্রদত্ত কার্যকরকরণের জন্য একই ফলনের h(k)জন্য একই মূল্য সহ অভিব্যক্তির সমস্ত মূল্যায়ন । - শেষ নোট]k এবং .9 …

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.