Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

strcpy()関数を使用せずに文字列をコピーするCプログラム


このセクションでは、strcpy()関数を使用せずに文字列を他の文字列にコピーする方法を説明します。この問題を解決するために、strcpy()のように機能する独自の関数を作成できますが、ここではいくつかのトリックに従います。別のライブラリ関数を使用して、文字列を別の文字列にコピーします。

ロジックは非常に単純です。ここでは、sprintf()関数を使用します。この関数は、値または行を文字列に出力するために使用されますが、コンソールでは使用されません。これは、printf()とsprintf()の唯一の違いです。ここで、最初の引数は文字列バッファです。データを保存したい場所。

Input − Take one string "Hello World"
Output − It will copy that string into another string. "Hello World"

アルゴリズム

Step 1: Take a string
Step 2: Create an empty string buffer to store result
Step 3: Use sprintf() to copy the string
Step 4: End

サンプルコード

#include<stdio.h>
main() {
   char str[50]; //create an empty string to store another string
   char *myString = "Program to copy a String";
   sprintf(str, "%s", myString);//Use sprintf to copy string from myString to str
   printf("The String is: %s", str);
}

出力:

The String is: Program to copy a String

  1. strncmpライブラリ関数を使用して2つの文字列を比較するCプログラムを作成します

    Strncmpは、string.hファイルに存在する事前定義されたライブラリ関数であり、2つの文字列を比較し、どちらの文字列が大きいかを表示するために使用されます。 strcmp機能(文字列比較) この関数は2つの文字列を比較します。両方の文字列の最初の2つの一致しない文字のASCIIの違いを返します。 構文 int strcmp (string1, string2); 差がゼロに等しい場合、string1=string2。 string2。 差が負の場合、string1

  2. C言語のstrcpy()関数とは何ですか?

    Cライブラリ関数char* strcpy(char * dest、const char * src) srcが指す文字列をコピーします 宛先へ 。 文字の配列は文字列と呼ばれます。 宣言 以下は配列の宣言です char stringname [size]; 例-charstring[50];長さ50文字の文字列 初期化 単一文字定数の使用- char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}