برنامه ریزی رشته ها
جدول محتوا
- رشته های C
- چگونه یک رشته را تایپ کنیم؟
- چگونه می توانیم رشته ها را اولویت بندی کنیم؟
- خواندن رشتهاز کاربر
- مثال: scanf () برای خواندن رشته
- مثال: () و (()
- انتقال رشته ها به یک تابع
- مثال: انتقال رشته ها به یک تابع
- رشته ها و اشاره گرها
- مثال: رشته ها و اشاره گرها
- توابع رشته ای معمولا استفاده می شود
در برنامه نویسی C یک رشته یک آرایه از کاراکترهایی است که کاراکتر \0
خاتمه می دهند. مثلا:
"c رشته"
هنگامی که کامپایلر یک دنباله ای از شخصیت های محصور در علامت نقل قول قرار می گیرد، یک علامت صفر در انتهای آن اضافه می شود.
چگونه یک رشته را تایپ کنیم؟
قبل از اینکه بتوانید با رشته ها کار کنید، ابتدا باید آنها را اعلام کنید. از آنجا که رشته آرایه ای از شخصیت ها است. شما رشته ها را همان شیوه ای که با آرایه ها انجام می دهید اعلام می کنید.
اگر شما نمی دانید که چه آرایه ها هستند، ما توصیه می کنیم که آرایه های C را بررسی کنید.
در اینجا نحوه تایپ یک رشته را بیان میکنیم:
char s [5]؛
چگونه می توانیم رشته ها را اولویت بندی کنیم؟
شما می توانید رشته ها را به روش های مختلف راه اندازی کنید.
char c [] = "abcd"؛ char c [50] = "abcd"؛ char c [] = {'a'، 'b'، 'c'، 'd'، '\ 0'}؛ char c [5] = {'a'، 'b'، 'c'، 'd'، '\ 0'}؛
خواندن رشته از کاربر
شما می توانید از تابع scanf()
برای خواندن یک رشته استفاده کنید.
تابع scanf()
دنباله ای از شخصیت ها را تا زمانی که فضای خالی (فضای، خط جدید، زبانه و غیره) روبرو می شود، خوانده می شود.
مثال 1: scanf () برای خواندن یک رشته
#include <stdio.h> int main() { char name[20]; printf("Enter name: "); scanf("%s", name); printf("Your name is %s.", name); return 0; }
خروجی
نام خانوادگی را وارد کنید: دنیس ریچی نام شما دنیس است
اگرچه دنیس ریچی در برنامه فوق وارد شده بود، تنها ریتی در رشته ی نام ذخیره شد. این به این دلیل است که پس ازRitche فضای وجود دارد.
چگونه یک خط از متن را بخوانیم؟
شما می توانید از تابع gets()
برای خواندن یک خط از رشته استفاده کنید. و شما می توانید از puts()
برای نمایش رشته استفاده کنید.
مثال 2: می شود () و قرار می دهد ()
#include <stdio.h> int main() { char name[30]; printf("Enter name: "); gets(name); // read string printf("Name: "); puts(name); // display string return 0; }
هنگامی که برنامه را اجرا میکنید، خروجی خواهد بود:
نام خود را وارد کنید: تام هنکس نام: تام هنکس
انتقال رشته ها به عملکرد
رشته ها می توانند به یک تابع همانند آرایه ها به یک تابع انتقال داده شوند. درباره انتقال آرایه به یک تابع بیشتر بدانید.
مثال 3: انتقال رشته به یک تابع
#include <stdio.h> void displayString(char str[]); int main() { char str[50]; printf("Enter string: "); gets(str); displayString(str); // Passing string to a function. return 0; } void displayString(char str[]) { printf("String Output: "); puts(str); }
#include <stdio.h> void displayString(char str[]); int main() { char str[50]; printf("Enter string: "); gets(str); displayString(str); // Passing string to a function. return 0; } void displayString(char str[]) { printf("String Output: "); puts(str); }
رشته ها و اشاره گرها
نامهای رشته مانند آرایه ها “به” اشاره گرها “تخریب می شوند”. از این رو، شما می توانید اشاره گر را با همان نام رشته ای برای دستکاری عناصر رشته استفاده کنید. قبل از اینکه این مثال را چک کنید، توصیه کردیم که C Arrays و Pointers را بررسی کنید:
مثال 4: رشته ها و اشاره گرها
#include <stdio.h> int main(void) { char name[] = "Harry Potter"; printf("%c", *name); // Output: H printf("%c", *(name+1)); // Output: a printf("%c", *(name+7)); // Output: o char *namePtr; namePtr = name; printf("%c", *namePtr); // Output: H printf("%c", *(namePtr+1)); // Output: a printf("%c", *(namePtr+7)); // Output: o }