Hossein Shahmohammadi
Hossein Shahmohammadi
خواندن ۲ دقیقه·۳ سال پیش

آموزش زبان برنامه نویسی سی شارپ (#C) (قسمت ششم)

علامت @

علامت @ به شما اجازه می‌دهد که کاراکترهای کنترلی را رد کرده و رشته ای خواناتر و طبیعی تر ایجاد کنید. وقتی از کاراکترهای کنترلی در یک رشته استفاده می‌شود، ممکن است برای تایپ مثل یک بک اسلش (\) به جای استفاده از دو علامت \\ از یک \ استفاده کرده و دچار اشتباه شوید. این کار باعث به وجود آمدن خطای کامپایلری شده و چون کامپایلر فکر می کند که شما می خواهید یک کاراکتر کنترلی را تایپ کنید، کاراکتر بعد از علامت \ را پردازش می کند و چون کاراکتر کنترلی وجود ندارد خطا به وجود می آید. به مثال زیر توجه کنید:

System.Console.WriteLine("I want to have a cat\dog as a birthday present."); //Error

با وجودیکه بهتر است در مثال بالا از اسلش (/) در cat/dog استفاده شود ولی عمدا از بک اسلش (\) برای اثبات گفته بالا استفاده کرده ایم. کامپایلر خطا ایجاد می کند و به شما می گوید که کاراکتر کنترلی d\ قابل تشخیص نیست، چون چنین کاراکتر کنترلی وجود ندارد. زمانی وضعیت بدتر خواهد شد که کاراکتر بعد از بک اسلش کاراکتری باشد که هم جزء یک کلمه باشد و هم جزء کاراکترهای کنترلی. به مثال زیر توجه کنید:

System.Console.WriteLine("Answer with yes\no");

Answer with yes

o

استفاده از علامت @ برای نادیده گرفتن کاراکترهای کنترلی

استفاده از علامت @ زمانی مناسب است که شما نمی خواهید از علامت بک اسلش برای نشان دادن یک کاراکتر کنترلی استفاده کنید. استفاده از این علامت بسیار ساده است و کافی است که قبل از رشته مورد نظر آن را قرار دهید.

System.Console.WriteLine(@"I want to have a cat\dog as a birthday present.");

I want to have a cat\dog as a birthday present.

از علامت @ معمولا زمانی استفاده می‌شود که شما بخواهید مسیر یک دایرکتوری را به عنوان رشته داشته باشید. چون دایرکتوریها دارای تعداد زیادی بک اسلش هستند و طبیعتا استفاده از علامت @ به جای دابل بک اسلش (\\) بهتر است.

System.Console.WriteLine(@"C:\Some Directory\SomeFile.txt");

C:\Some Directory\SomeFile.txt

اگر بخواهید یک دابل کوتیشن چاپ کنید به سادگی می‌توانید از دو دابل کوتیشن استفاده کنید.

System.Console.WriteLine(@"Printing ""double quotations""...");

Printing "double quotations"...

از به کار بردن علامت @ و کاراکترهای کنترلی به طور همزمان خودداری کنید چون باعث چاپ کاراکتر کنترلی در خروجی می‌شود.

استفاده از علامت @ برای نگهداری از قالب بندی رشته ها

یکی دیگر از موارد استفاده از علامت @ چاپ رشته های چند خطی بدون استفاده از کاراکتر کنترلی n\ است. به عنوان مثال برای چاپ پیغام زیر:

C# is a great programming language and it allows you to create different kinds of applications.

یکی از راه های چاپ جمله بالا به صورت زیر است:

Console.WriteLine("C# is a great programming language and\n" + "it allows you to create different\n" + "kinds of applications.");

به نحوه استفاده از n\ در آخر هر جمله توجه کنید. این کاراکتر همانطور که قبلا مشاهده کردید خط جدید ایجاد می کند و در مثال بالا باعث می‌شود که جمله به چند خط تقسیم شود. از علامت + هم برای ترکیب رشته ها استفاده می‌شود. راه دیگر برای نمایش مثال بالا در چندین خط، استفاده از علامت @ است:

Console.WriteLine(@&quotC# is a great programming language and it allows you to create different kinds of applications.&quot);

در این حالت کافیست که در هر جا که میخواهید رشته در خط بعد نمایش داده شود دکمه Enter را فشار دهید.

سی شارپآموزش زبان برنامه نویسیcsharpprogramming
من می‌دانم که هیچ نمی‌دانم.
شاید از این پست‌ها خوشتان بیاید