سلام بر بچه ها
یکی از مشکلاتی که در برنامه نویسی ممکن است به آن برخورد کنید، برخورد با کاراکتر ascii با کد 65279 می باشد.
این مشکل بیشر در هنگام خواندن فایلها رخ می دهد.
این مشکل ربطی به زبان برنامه نویسی شما ندارد در همه زبان های برنامه نویسی ممکن است رخ دهد.
این کاراکتر به اسم
zero-width no-break space
شناخته می شود و بیشتر هنگامی رخ می دهد که فایل شما به صورت
byte-order mark (BOM)
ذخیره شده باشد.
لذا کافی است که فایل خود را بدون این ویژگی ذخیره کنید.
مثلا فرض کنید من فایل زیر را می خوانم.
fid=fopen(‘retio.sr’,’r’);
با دستور زیر هر خط آنرا به ترتیب در یک حلقه می خوانم
tline = fgetl(fid)
فرض کنید عدد 1 در اولین خط آن قرار داشته باشد.
شما این خط را می خوانید و با کمال تعجب می بینید که چیزی که خواندید دارای 2 بعد می باشد.
بعد اول چیزی که خواندید همین کاراکتر اسکی 65279 می باشد.
اگر خروجی tline را چاپ کنید تنها عدد 1 را می بینید و این کد اسکی مخفی است.
برای دیدن این کد کافی است tline را به دستور double بفرستید.
مطلب آموزنده و مفیدی بود