برنامهای به زبان C بنویسید که یک خط ورودی را گرفته و با استفاده از تابع strchr از کتابخانه string.h اولین کاراکتر '=' یا ':' را پیدا کند و سپس نام متغیر (قبل از آن) و مقدار یا برچسب (بعد از آن) را جدا و چاپ کند.
14.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 01:20 0.0
از تابع strchr (در ) برای جستجوی نخستین '=' و ':' استفاده کنید، موقعیتهای بازگشتی را مقایسه کنید تا نزدیکترین کاراکتر به ابتدای رشته را پیدا کنید، سپس با استفاده از اشارهگرها و آرایههای موقت بخش قبل و بعد از آن را جدا کنید؛ برای مدیریت فاصلهها میتوانید فضاهای سفید را از ابتدا/انتهای هر بخش حذف کنید یا آنها را در بافر جدید کپی کنید و در پایان نام و مقدار/برچسب را چاپ کنید. به کمک pointer arithmetic و توابعی مثل strcpy/strncpy میتوانید زیررشتهها را بسازید و در صورت عدم وجود هر دو کاراکتر خطا یا پیام مناسب نمایش دهید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
استفاده از strchr برای پیداکردن نخستین '=' و ':' و مقایسهٔ اشارهگرهای برگرداندهشده روش ساده و کارآمدی است تا نزدیکترین جداکننده را بیابید. بخشهای قبل و بعد را با اشارهگرها جدا کنید و فضاهای سفید را از ابتدا/انتهای هر بخش حذف کنید یا آنها را در بافرهای موقت کپی کنید و با درج ترمیناتور '\0' پایانبندی کنید. حتماً طول بافرها را بررسی کنید تا از overflow جلوگیری شود و قبل از استفاده وجود NULL را کنترل نمایید. اگر هیچکدام از جداکنندهها یافت نشد، پیام خطای مناسب چاپ کنید و در صورت نیاز از توابع ایمنتری مثل strncpy/strnlen یا توابع مخصوص trim استفاده کنید.
گزارش