کاراکترهای کنترلی کاراکترهای ترکیبی هستند که با یک بک اسلش (\) شروع میشوند و به دنبال آنها یک حرف یا عدد می آید و یک رشته را با فرمت خاص نمایش میدهند. برای مثال برای ایجاد یک خط جدید و قرار دادن رشته در آن میتوان از کاراکتر کنترلی n\ استفاده کرد:
#include <iostream> using namespace std; int main() { cout << "Hello\nWorld"; }
Hello World
مشاهده کردید که کامپایلر بعد از مواجهه با کاراکتر کنترلی n\ نشانگر ماوس را به خط بعد برده و بقیه رشته را در خط بعد نمایش میدهد. جدول زیر لیست کاراکترهای کنترلی و کارکرد آنها را نشان میدهد:
عملکرد | کاراکتر کنترلی | عملکرد | کاراکتر کنترلی |
Form Feed | \f | چاپ کوتیشن | \’ |
خط جدید | \n | چاپ دابل کوتیشن | \” |
سر سطر رفتن | \r | چاپ بک اسلش | \\ |
حرکت به صورت افقی | \t | چاپ فضای خالی | \۰ |
حرکت به صورت عمودی | \v | صدای بیپ | \a |
چاپ کاراکتر یونیکد | \u | حرکت به عقب | \b |
ما برای استفاده از کاراکترهای کنترلی از بک اسلش (\) استفاده میکنیم. از آنجایی که \ معنای خاصی به رشته ها میدهد برای چاپ بک اسلش (\) باید از (\\) استفاده کنیم:
cout << "We can print a \\ by using the \\\\ escape sequence.";
We can print a \ by using the \\ escape sequence.
یکی از موارد استفاده از \\، نشان دادن مسیر یک فایل در ویندوز است:
cout << "C:\\Program Files\\Some Directory\\SomeFile.txt";
C:\Program Files\Some Directory\SomeFile.txt
از آنجایی که از دابل کوتیشن (”) برای نشان دادن رشته ها استفاده میکنیم برای چاپ آن از “\استفاده میکنیم:
cout << "I said, \"Motivate yourself!\".";
I said, "Motivate yourself!".
همچنین برای چاپ کوتیشن (’) از ‘\ استفاده میکنیم:
cout << "The programmer\'s heaven.";
The programmer's heaven.
برای ایجاد فاصله بین حروف یا کلمات از t\ استفاده میشود:
cout << "Left\tRight";
Left Right
هر تعداد کاراکتر که بعد از کاراکتر کنترلی r\بیایند به اول سطر منتقل و جایگزین کاراکترهای موجود میشوند:
cout << "Mitten\rK";
Kitten
مثلا در مثال بالا کاراکتر K بعد از کاراکتر کنترلی r\ آمده است. کاراکتر کنترلی حرف K را به ابتدای سطر برده و جایگزین حرف M میکند. برای چاپ کاراکترهای یونیکد میتوان از u\ استفاده کرد. برای استفاده از u\، مقدار در مبنای ۱۶ کاراکتر را درست بعد از علامت u\ قرار میدهیم. برای مثال اگر بخواهیم علامت (⌐┬) را چاپ کنیم باید بعد از عالمت u \ مقدار ۰۰A9 را قرار دهیم مانند :
cout << "\u00A9";
©
برای مشاهده لیست مقادیر مبنای ۱۶ برای کاراکترهای یونیکد به اینجا مراجعه کنید.
اگر کامپایلر به یک کاراکتر کنترلی غیر مجاز برخورد کند، برنامه پیغام خطا میدهد. بیشترین خطا زمانی اتفاق می افتد که برنامه نویس برای چاپ اسلش (\) از \\ استفاده میکند. برای دریافت اطلاعات بیشتر در مورد کاراکترهای کنترلی به اینجا مراجعه کنید: