خانه / دوره آموزش مقدماتی C و ++C / قسمت بیست و هفتم آموزش C – اشاره گر و رشته

قسمت بیست و هفتم آموزش C – اشاره گر و رشته

چون رشته ها در زبان C بصورت آرایه تعریف می شوند بین آنها و اشاره گرها نیز ارتباط نزدیکی وجود دارد . بطوری که بسیاری از توابع کتابخانه ای که با رشته ها سر و کار دارند ، ارتباط نزدیکی با اشاره گرها پیدا می کنند . روابط بین اشاره گر و رشته را با مثال هایی توضیح می دهیم .

#include &lt;stdio.h&gt;<br />
#include &lt;conio.h&gt;<br />
void upper(char *string);<br />
void main()<br />
{<br />
char s[50] ;<br />
printf(&quot;enter a string in&quot;);<br />
printf(&quot;lowercase:\n&quot;);<br />
gets(s);<br />
upper(s);<br />
printf(&quot;\nuppercase of&quot;);<br />
printf(&quot;string is:\n&quot;);<br />
puts(s );<br />
getch();<br />
}<br />
void upper(char *string)<br />
{<br />
while(*string)<br />
{<br />
if(*string&gt;='a' &amp;&amp; *string&lt;='z')<br />
*string=*string-32 ;<br />
string++ ;<br />
}<br />
}

مثال ۱ : برنامه ای که رشته ای را از ورودی دریافت کرده و کلیه حروف کوچک این رشته را به حروف بزرگ تبدیل می کند .

نمونه ای از خروجی برنامه مثال ۱ :

: enter a string in lowercase
micropedia.ir
: uppercase of string is
MICROPEDIA.IR

مثال ۲ : برنامه ای که رشته عددی را از ورودی خوانده و سپس آن را به مقدار عددی تبدیل می کند .

#include &lt;stdio.h&gt;<br />
#include &lt;conio.h&gt;<br />
#include &lt;stdlib.h&gt;<br />
void ascii_to_int(int *value,char *str);<br />
void main()<br />
{<br />
int number ;<br />
char s[10] ;<br />
printf(&quot;\n string representation of numeric : &quot;);<br />
gets(s);<br />
ascii_to_int(&amp;number,s);<br />
printf(&quot;\n numeric value of string is : %d&quot;,number);<br />
getch();<br />
}<br />
void ascii_to_int(int *value,char *str)<br />
{<br />
int sign=1 ;<br />
*value=0 ;<br />
while(*str==' ')str++ ;<br />
if(*str=='-' || *str=='+')<br />
sign=(*str++=='-' )?- 1:1;<br />
while(*str)<br />
if((*str&gt;='0')&amp;&amp;(*str&lt;='9'))<br />
*value=(*value*10)+(*str++- 48 );<br />
else<br />
{<br />
printf(&quot;Watning : the&lt;%c&gt; is:&quot;,*str);<br />
printf(&quot;invalid character.&quot;);<br />
exit(0);<br />
}<br />
*value *=sign ;<br />
}<br />

خروجی های حاصل از ۲ بار اجرای برنامه مثال ۲ :

string representation of a numeric : 342
numeric value of string is : 342

string representation of a numeric : 45y4
.Watning : the is invalid character

نقد و بررسی

User Rating: ۴٫۵۵ ( ۱ votes)

درباره ی آریـان پــور

سلام . آریــان پور هستم . از نویسندگان میکروپـدیا .. علاقه مــند به برنامه نویسی و طراحی وب و شبکه ! دیدگاه ها و نظرات شما دوستان بررسی میشه و باعث دلگرمـی برای نوشتن مطالب بهتر و به روزتر . در تماس باشید با : aryanpour [at] micropedia [dot] ir با مـا همراه باشید ..

همچنین ببینید

قسمت بیست و سوم آموزش C – اشاره گرها

درک صحیح مفهوم اشاره گرها در زبان C بزرگترین موفقیت یک برنامه نویس است . …

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

پاسخ عبارت زیر را وارد کنید: *