Write a program that uses a function to copy one string into another without using the strcpy() function available in the standard library of C.

C Programming Language Function in C Language (Article) Function in C Language (Program)

800

Program:

<span class="pln"> </span><span class="com">#include</span><span class="pln"> </span><span class="str">&lt;stdio.h&gt;</span><span class="pln">
</span><span class="kwd">void</span><span class="pln"> string_copy</span><span class="pun">(</span><span class="kwd">char</span><span class="pln"> </span><span class="pun">[],</span><span class="pln"> </span><span class="kwd">char</span><span class="pln"> </span><span class="pun">[]);</span><span class="pln"> </span><span class="com">/* function prototype */</span><span class="pln">


</span><span class="kwd">int</span><span class="pln"> main</span><span class="pun">()</span><span class="pln">
</span><span class="pun">{</span><span class="pln">
	</span><span class="kwd">char</span><span class="pln"> a</span><span class="pun">[</span><span class="lit">100</span><span class="pun">];</span><span class="pln"> </span><span class="com">/*** source string ***/</span><span class="pln">
	</span><span class="kwd">char</span><span class="pln"> b</span><span class="pun">[</span><span class="lit">100</span><span class="pun">];</span><span class="pln"> </span><span class="com">/*** destination string ***/</span><span class="pln">
	printf</span><span class="pun">(</span><span class="str">"\n Input source string : "</span><span class="pun">);</span><span class="pln">
	scanf</span><span class="pun">(</span><span class="str">"%[^\n]"</span><span class="pun">,</span><span class="pln">a</span><span class="pun">);</span><span class="pln"> </span><span class="com">/* read input source string */</span><span class="pln">
	string_copy</span><span class="pun">(</span><span class="pln">b</span><span class="pun">,</span><span class="pln">a</span><span class="pun">);</span><span class="pln"> </span><span class="com">/* function call */</span><span class="pln">
	printf</span><span class="pun">(</span><span class="str">"\n Destination string : %s\n"</span><span class="pun">,</span><span class="pln">b</span><span class="pun">);</span><span class="pln">
	</span><span class="kwd">return</span><span class="pln"> </span><span class="lit">0</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
</span><span class="com">/*** function definition ***/</span><span class="pln">
</span><span class="kwd">void</span><span class="pln"> string_copy</span><span class="pun">(</span><span class="kwd">char</span><span class="pln"> d</span><span class="pun">[],</span><span class="pln"> </span><span class="kwd">char</span><span class="pln"> s</span><span class="pun">[])</span><span class="pln">
</span><span class="pun">{</span><span class="pln">
	</span><span class="kwd">int</span><span class="pln"> i </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0</span><span class="pun">;</span><span class="pln">
	printf</span><span class="pun">(</span><span class="str">"\n Source string : %s\n"</span><span class="pun">,</span><span class="pln">s</span><span class="pun">);</span><span class="pln">
	</span><span class="com">/* copying the string */</span><span class="pln">
	</span><span class="kwd">for</span><span class="pln"> </span><span class="pun">(</span><span class="pln">i </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0</span><span class="pun">;</span><span class="pln"> s</span><span class="pun">[</span><span class="pln">i</span><span class="pun">]</span><span class="pln"> </span><span class="pun">!=</span><span class="pln"> </span><span class="str">'\0'</span><span class="pun">;</span><span class="pln"> i</span><span class="pun">++)</span><span class="pln">
			d</span><span class="pun">[</span><span class="pln">i</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> s</span><span class="pun">[</span><span class="pln">i</span><span class="pun">];</span><span class="pln">
	d</span><span class="pun">[</span><span class="pln">i</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> s</span><span class="pun">[</span><span class="pln">i</span><span class="pun">];</span><span class="pln"> </span><span class="com">/* Copy NUL character to destination string */</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
 </span>

Output:

 Input source string : atnyla

 Source string : atnyla

 Destination string : atnyla

 

Explanation:

None

This Particular section is dedicated to Programs only. If you want learn more about C Programming Language. Then you can visit below links to get more depth on this subject.