مضى على الشبكة و يوم من العطاء.

[ شرح ] اساسيات لغة C | سلاسل الهروب 0x04

N0Tb1t

./عضو جديد

firefox
linux

السمعة:

بسم الله
في هذا المقال سنتعرف على سلاسل الهروب escape sequences وأهميتها واستخداماتها

سلاسل الهروب : تُستخدم داخل النصوص للتعبير عن رموز خاصة أو للتحكم في تنسيق المخرجات. يتم تمثيلها باستخدام الشرطة المائلة العكسية (\) متبوعة بحرف أو أكثر. تهدف إلى تسهيل عملية تمثيل بعض المحارف الخاصة التي سيكون من الصعب استخدامها ضمن محرف ثابت (كالـ Tab مثلاً أو NewLine).

ما هي أهم سلاسل الهروب:
1. التحكم في التنسيق والمخرجات:

- 'n\' : تستخدم للانتقال إلى سطر جديد (NewLine).
مثال:
C:
printf("Hello\nWorld");

- 't\' : تستخدم لترك Tab (spaces)
مثال:
C:
printf("Hello\tWorld");

- 'r\' : تستخدم للعودة لبداية السطر
مثال:
C:
printf("Hello\rWorld");

- 'b\' : تستخدم لحذف الحرف الذي يسبقها
مثال:
C:
printf("Hello\bWorld");


2. إدراج الرموز الخاصة:
- " '\ ": لكتابة علامة التنصيص الفردية (').
مثال:
C:
printf("It\'s cool!");

- ' "\ ': لكتابة علامة التنصيص المزدوجة (").
مثال:
C:
printf("He said, \"Hello!\"");


3. إدراج الرموز بالأكواد العدديّة:
- 'ooo\' : تمثيل الحرف باستخدام قيمته العشرية بالنظام الثماني (Octal).
مثال:
C:
 printf("\101");

- 'xhh\' : تمثيل الحرف باستخدام قيمته بالنظام الست عشري (Hexadecimal).
مثال:
C:
 printf("\x41");

اذا كان عندك ضعف بانظمة العد رح اترك pdf يشرحهم بطريقة مبسطة ان شاء الله

4. من أهم سلاسل الهروب التي تستخدم مع السلاسل النصية:
- '0\' : تمثيل الحرف المنهي للنصوص (Null Character). يُستخدم لإنهاء النصوص النصية.
مثال:
C:
char str[] = "Hello\0World";
printf("%s", str);



مثال شامل:
C:
#include <stdio.h>

int main() {
    printf("Escape Sequences Demo:\n");
    printf("Newline -> \\n\n");
    printf("Tab -> \\t\tTabbed Text\n");
    printf("Backslash -> \\\\\n");
    printf("Double Quote -> \\\"Hello\\\"\n");
    printf("Octal -> \\101\n");
    printf("Hexadecimal -> \\x41\n");
    return 0;
}


يجب التطبيق العملي لكل السلاسل ولا تخف لعدم حفظك اياهم ف على الممارسة العملية سوف تشعر بسهولة هذه السلاسل فقط يتطلب الأمر بعض الممارسة العملية وفقكم الله.
 

المرفقات

التعديل الأخير:
بارك الله فيك اخي العزيز

أخيراً وجدت شخص يهتم بلغة سي 😉
 
بارك الله فيك اخي العزيز

أخيراً وجدت شخص يهتم بلغة سي 😉
وفيك بارك الله
ايوا نحنا قليلين old school xD
ياريت تشاركنا خبرتك وتدقق عالكلام
 
وفيك بارك الله
ايوا نحنا قليلين old school xD
ياريت تشاركنا خبرتك وتدقق عالكلام
ان شاء الله يتكاثرون :)

بأذن لله تعالى بعد العيد سنناقش كل مايخص هذي اللغة الجميله وكيفية التعمق بها بطرق مبسطة ..

وسنتناقش الدوال التي تمنع من تسبب
buffer over flow
وكيفية فهم انواع البيانات التي تستخدمها win32 api

بعد العيد نلتقي ان شاء الله تعالى ..
 
ان شاء الله يتكاثرون :)

بأذن لله تعالى بعد العيد سنناقش كل مايخص هذي اللغة الجميله وكيفية التعمق بها بطرق مبسطة ..

وسنتناقش الدوال التي تمنع من تسبب
buffer over flow
وكيفية فهم انواع البيانات التي تستخدمها win32 api

بعد العيد نلتقي ان شاء الله تعالى ..
إن شاء الله
بركي بكون خلصت الاساسيات عشان توضح الصورة للعامة
وان شاء الله رح اتوسع بقصص كتيرة متل الmultitasking و memory management و threads
 

آخر المشاركات

عودة
أعلى