আমি সি প্রিপ্রোসেসর ব্যবহার করে কীভাবে আমি #define
'ডি ইন্ট টু #define
' ডি স্ট্রিংটি যুক্ত করতে পারি তা জানার চেষ্টা করছি । আমার সংকলকটি সেন্টস 5 এ জিসিসি 4.1, সমাধানটি মিনিজিডাব্লুয়ের জন্যও কাজ করা উচিত।
আমি একটি স্ট্রিংয়ে একটি সংস্করণ নম্বর সংযোজন করতে চাই, তবে আমি এটির কাজটি করতে পারার একমাত্র উপায় হ'ল স্ট্রিং হিসাবে সংজ্ঞায়িত সংস্করণ নম্বরটির একটি অনুলিপি তৈরি করা।
সর্বনিকটবর্তী বস্তু আমি খুঁজে পাইনি ম্যাক্রো আর্গুমেন্ট উদ্ধৃত একটি পদ্ধতি ছিল, কিন্তু তার জন্য কাজ করে না #define
গুলি
এটি কাজ করে না।
#define MAJOR_VER 2
#define MINOR_VER 6
#define MY_FILE "/home/user/.myapp" #MAJOR_VER #MINOR_VER
এটি আর ছাড়াই কাজ করে না #
কারণ মানগুলি সংখ্যা হয় এবং এটি প্রসারিত হবে "/home/user/.myapp" 2 6
, যা বৈধ সি নয় ।
এটি কাজ করে, তবে সংস্করণ সংজ্ঞায়িত করা অনুলিপিগুলি থাকা আমার পছন্দ নয় কারণ সংখ্যার পাশাপাশি আমারও তাদের প্রয়োজন।
#define MAJOR_VER 2
#define MINOR_VER 6
#define MAJOR_VER_STR "2"
#define MINOR_VER_STR "6"
#define MY_FILE "/home/user/.myapp" MAJOR_VER_STRING MINOR_VER_STRING