C の文字列関数と例

公開: 2022-12-05

C の文字列関数は、"/0" などの null および void 記号を中断する傾向がある文字の配列として参照できます。 まず、文字列と文字の配列の違いを理解することが重要です。 前者は最後にヌル文字を受け取りますが、後者とは異なり、ヌル文字で終わる必要はありません。

文字列は、多くの場合、要件に適合するさまざまな操作で変更および使用されます。 文字列の長さを計算するためにループが使用されますが、他の複雑な目的には最適なオプションではありません。 これが、C の文字列関数が直接的かつ効率的にコーディングするために不可欠である理由です。

目次

文字列関数の最も一般的な例は何ですか?

Cのいくつかの文字列関数は、大規模に使用されています。 以下は次のとおりです。

  • Strcat:この function() の目的は、ソース文字列のコピーを文字列の最終部分に添付することです。 Strcat() 関数は、特定の引数につながります。
    1)宛先
    2) ソース

文字列の最後の部分にコピーが添付されています。 SRC の最初の文字は、文字列全体に存在する最後の文字の代わりとして機能します。

例えば:

//strcat
#include <cstring>
#include <iostream>
名前空間 std の使用。 int メイン ()

Char dest [50] = 「これは」
Char src [50] = 「例」
STRCAT (宛先、ソース)
cout<<dest
リターン=0

  • Strrchr: C++ に関して言えば、Strrchr は主に文字列処理を実行します。 CString は、主にヘッダー ファイルで使用されます。 ポインターは、主に文字列の末尾部分に返されます。

このような構文の例は次のとおりです。
Strrchr (const char*str, int c)
ここで、STR は文字列、C は入力する文字です。
出力: 最後の e の後の文字列: eks
最後の m の後の文字列: null

  • Strcmp: C () の Strcmp 関数は、組み込みのライブラリ関数として理解でき、一般的に <string.h> ヘッダー ファイルで表示されます。 2 つの文字列が引数として取られ、辞書式に比較されます。
    構文: int strcmp (const char *leftStr, const char *rightStr)

指定されたプロトタイプは、パラメーターの 2 つの文字列を示し、両方の文字列内の比較に関して整数値で終わります。

  • 両方の文字列が等しい場合、2 番目の文字がチェックに使用され、同じであることが判明した場合、3 番目の文字がチェックされます。
  • このプロセスは、文字列内のいずれかの文字が null を返すか、両方の文字が等しくないことが判明するまで続行されます。
  • Strcpy: C++ で最もよく使用される関数の 1 つである Strcpy は、ある文字列を別の文字列からコピーするために必要なライブラリ関数です。 また、特に string.h ヘッダー ファイルで、C でも使用されることがあります。
    構文: char* strcpy (char*dest, const char*src)
    パラメータ: str: 文字列の長さを調べるには、文字列変数を測定する必要があります。
  • strncat:文字列処理に関して定義済みの関数と見なされる strncat は、C と C++ の両方で使用されます。 この場合、string.h は文字列関数に非常に必要なヘッダー ファイルです。 この関数は、null 文字によって指示された文字列から n 文字以下を付加します。 開始文字は、すべての文字列の末尾にある null 文字を上書きする傾向があります。 これが、文字列 dest が strlen dest (n+) になる理由です。

ソフトウェア エンジニアリングに関する人気のコースと記事

人気番組
ソフトウェア開発のエグゼクティブ PG プログラム - IIIT B ブロックチェーン証明書プログラム - PURDUE サイバーセキュリティ証明書プログラム - PURDUE コンピューター サイエンスの MSC - IIIT B
その他の人気記事
米国のクラウド エンジニアの給与 2021-22 米国でのAWSソリューションアーキテクトの給与 米国のバックエンド開発者の給与 米国のフロントエンド開発者の給与
アメリカのウェブ開発者の給与 2022年のスクラムマスターインタビューの質問. 2022年にサイバーセキュリティのキャリアを始めるには? 工学部学生のための米国でのキャリアオプション

ただし、これらすべてが一度失敗する可能性があります。

  • 弦が重なっている
  • dest 配列は、src コンテンツをアタッチするのに十分な大きさではありません
  • Dest: 取り付けが必要な紐
  • Src:「n文字」を付けない文字列
  • N: 最大文字数を示します
  • Strlen:この特定の関数は、提供された文字列の長さを計算する傾向があります。 [/0] は、このシナリオではヌル文字とは呼ばれません。
    構文: int strlen (const char*str)
    パラメーター: 長さは文字列の長さの主な目的と見なされます。
  • Strncmp:この関数は主に文字列のカウント文字に焦点を当て、結果に従って指定された整数を返します。
  • 2 つの文字列が取得され、両方を比較できるように数値 num が引数と見なされます。
  • num は、最長の文字列の長さに等しくなければなりません。
  • 2 つの文字列の比較は、辞書式に行われます。
  • このプロセスは、ヌル文字に到達するか、両方の文字列の num 文字が同一になると結論に至ります。
  • Strncpy: strcpy() 関数と同様に、Strncpy 関数は src の最大 n バイトをコピーします。 文字列に null 文字がない場合、null で終了しません。 長さが n 未満の場合、合計 n 文字が追加のヌル文字とともに示されます。
    構文: char *strncpy (char*dest, const char* src, size t_n)
    パラメーター:
    Src: コピーする文字列
    Dest: コンテンツがコピーされるポインタ

N: これは最初の n 文字です

  • Strrchr:この関数 () は、すべての C/C++ プログラミング言語に適用できます。 文字列に存在する最後の部分を特定するために使用されます。 C 文字列の一部と見なされるため、文字列の末尾へのポインターを再利用する必要があります。 最後のヌル文字は、C 文字列の終了部分として理解されます。 これが、CString ヘッダー ファイルと呼ばれる理由です。
    構文: char* strrchr ( char*str, int ch)
    パラメーター: str: 主に null で終わる文字列へのポインターに焦点を当てます。

Ch: 検索が必要な文字を指します。

したがって、 C の文字列関数には、特に C/C++ プログラミング言語で使用できる多くの例があります。

世界トップクラスの大学が提供するソフトウェア開発コースをオンラインで学びましょう。 エグゼクティブ PG プログラム、上級認定プログラム、または修士プログラムを取得して、キャリアを加速させましょう。

最も一般的に使用される文字列関数はどれですか?

C の Strstr は、大規模なレベルでの文字列処理に必要な定義済み関数と呼ぶことができます。 文字列 h は、文字列関数のヘッダー行です。
この関数では、S1 と S2 の 2 つの文字列が必要で、これら両方の文字列の出現を検出します。 終端の null 文字は文字列に含まれていないため、この出現は主な機能として理解できます。
構文:
char * strstr (const char * S1, const char *S2)
パラメータ: S1- 検査する主な文字列
S2- S1 文字列にも存在するサブ文字列
戻り値: 最初の文字が S1 の S2 に配置されると、ポインターが返されます。 S2 が空の文字列であると示唆した場合、S1 が再び戻されます。

upGrad の独占的なソフトウェア開発ウェビナー –

SAAS ビジネス – 何がそんなに違うのか?

まとめ:

これまで見てきたように、文字列関数はコードを効率的かつ簡単にすることに重点を置いています。 C の文字列関数の最大の利点は、それらが既に事前に作成されているため、直接使用できることです。 これは最も重要なソフトウェア開発の 1 つであるため、この言語の基礎を学ぶ必要があります。 初心者レベルの難易度で、始めるのに理想的なプログラミング言語です。 Upgrad のソフトウェア開発エグゼクティブ PG プログラム - フル スタック開発は、文字列関数を試している場合に最適です。

コースのハイライトは次のとおりです。

  • オンラインセッション+ライブレクチャー
  • データ サイエンスと機械学習のコンテンツに 4 か月間無料でアクセス
  • 世界クラスの教員と業界の専門家
  • IITバンガロール卒業生のステータス
  • 30以上のケーススタディとプロジェクト
  • 学生サポートあり(24時間年中無休)
  • 非技術者および新しいコーダー向けのソフトウェア キャリア トランジション ブートキャンプ
  • 10 以上のプログラミング言語とツール

このコースのシラバスは次のとおりです。

  • 進学コース
  • 体験学習用ツールキット
  • 経験に基づく学習
  • OOD+ソフトウェア工学
  • データ構造とアルゴリズム
  • ユーザー インターフェイスとフロントエンド開発
  • バックエンド開発
  • ソフトウェア アーキテクチャと展開
  • キャップストーン・プロジェクト

詳細については、今すぐサインアップしてください。