私は英語初心者ではありませんので、私の無知を言い訳してください。私の宿題は、Cでchar文字列の要素を比較する関数を作成することです。この関数は後でmain()で呼び出され、具体的な文字列で動作するはずです。しかし、これらの文字列は各エントリごとに異なるサイズを持つ可能性があるため、関数のサイズを定義する意味はありません。私は各文字列のサイズを知る必要があります。そうでなければ、私のプログラムはいつ停止するかを知らないでしょう。どのように達成するのですか?私の最初の考えはsizeof()関数を使うことです。それはうまくいくのでしょうか、それとももっと複雑な解決策ですか?すべての回答ありがとう!Cの関数で、未定義の文字列サイズを扱うにはどうすればよいですか?
0
A
答えて
0
sizeof演算子は、char型の記憶単位の数で測定されたデータ型または変数のサイズを評価するために使用されます。 文字列の長さの評価には役に立ちません。
この目的のために、Cライブラリ(string.h)のstrlen()関数を使用することができます。 strlen()はnullを含まない文字列の長さを返します。 https://code.woboq.org/userspace/glibc/string/strcmp.c:あなたがまた続く
int stringlen(char str[])
{
int len=0;
while(str[i] != '\0')
{
len++;
}
return len;
}
関連する問題
- 1. bashで未定義の変数をエラーとして扱うにはどうすればよいですか?
- 2. javascript関数でパラメータを文字列として扱うにはどうすればよいですか?
- 3. PowerShellで文字列を16進数のシーケンスとして扱うにはどうすればよいですか?
- 4. 定義済みの文字列に文字を追加するにはどうすればよいですか?
- 5. DでC文字列をどのように扱うべきですか?
- 6. 大文字と小文字を同じように扱うにはどうすればよいですか?
- 7. C++の関数で文字列と文字列のサイズを組み合わせるにはどうすればよいですか?
- 8. 未終了文字列定数を修正するにはどうすればよいですか?
- 9. コマンドや関数の戻り値をどのように扱うべきですか?文字列か整数か?
- 10. 関数(言語c)でchar配列のサイズを取得するにはどうすればよいですか?
- 11. Cの文字配列から文字列を取得するにはどうすればよいですか?
- 12. C#で文字列をPascalCase文字列に変換するにはどうすればよいですか?
- 13. 文字列内の文字列を文字列内で渡すにはどうすればよいですか?
- 14. 文字列内の特定の文字列を削除するにはどうすればよいですか?
- 15. 関数から文字列の配列を返すにはどうすればよいですか?
- 16. #define定義をVS2008の文字列に変換するにはどうすればよいですか?
- 17. $(未定義)をどうすればいいですか?
- 18. Leksahのユーザー定義関数の定義に移動するにはどうすればよいですか?
- 19. C#で特定の文字列[index]をintに変換するにはどうすればよいですか?
- 20. Rubyでは、UTF以外の8文字をPDFコンテンツで扱うにはどうすればよいですか?
- 21. PowerShell関数で文字列置換を行うにはどうすればよいですか?
- 22. 文字列/数字を文字列に追加するにはどうすればよいですか?
- 23. C++/Arduino:文字列/文字配列をバイトに変換するにはどうすればよいですか?
- 24. 文字列に一定の文字数と数字があるかどうかを確認するにはどうすればよいですか?
- 25. 変数/関数定義をParallel(ParallelMapなど)で設定するにはどうすればよいですか?
- 26. 大量の文字列をC++で整数に変換するにはどうすればよいですか?
- 27. C++の文字列から文字を削除するにはどうすればよいですか?
- 28. CまたはC++で文字列インターンを行うにはどうすればよいですか?
- 29. 固定サイズの配列を定義するにはどうすればよいですか?
- 30. ユーザー定義関数の引数をdata.tableの列名にするにはどうすればいいですか?
などの文字列の長さを計算するための独自の関数を書くことができます
は、このコードを理解するようにしてください。 html –
'c'文字列は' NUL'文字 ''\ 0''で終わるので、既存の文字列関数はすべてその事実から動作します。例えば、['strlen'](https://linux.die.net/man/3/strlen)は、文字列をループし、' '\ 0''が見つかるまで見える文字ごとにカウントをインクリメントします。それは停止し、カウントは長さです。 – yano
前のメッセージで私があなたに示すのは、C関数strcmpのコードです。 –