問題タブ [string.h]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2594 参照

c - システムの標準Cライブラリ関数の実装はどこにありますか?

たとえば、strrev()関数。string.hで宣言されていることを知っているので、どのように実装されているかを知りたいと思います。では、ソースコードはどこにありますか?

OS:Windows XP SP3
IDE:Pelles C 6.50 RC3

0 投票する
2 に答える
2836 参照

c - cminpackのインストール時の「`strnstr'への未定義の参照」

Ubuntu10.10のクリーンインストールにcminpack1.1.2をインストールしています。

sudo makecminpackフォルダーで実行すると、52%で次のエラーが発生します。

私は中を見てgenf77tests.c#include <string.h>存在しているので、なぜ見つけるのに問題があるのか​​わかりませんstrnstr

この問題を解決するために私にできることはありますか?

0 投票する
1 に答える
2116 参照

gcc - Linuxでstring.h関数をインライン化する方法は?

string.h 内のすべての関数がインライン化されるように、いくつかのコードを最適化したいと考えています。私は x86_64 を使用しています。

-O3、-minline-all-stringops を試しましたが、「nm a.out」を実行すると、glibc バージョンを呼び出していることが示されます。

gcc -S で確認すると、呼び出しが表示されます。

私は何が欠けていますか?string.h には数十の #ifdef _SOME_SETTING_ があり、bits/string3.h はインライン バージョンを示していますが、そこに到達する方法がわかりません。

例えば:

0 投票する
7 に答える
5218 参照

c - strlen関数が#includeなしで機能する理由

簡単な質問:

strlen[char*]#include <string.h>私かどうかに関係なく完璧に動作します

コンパイラから取得するのは暗黙の宣言に関する警告だけですが、機能的には意図したとおりに機能します。

何故ですか?

0 投票する
6 に答える
16383 参照

c++ - また?

C++ プロジェクトに標準ヘッダー string.h を含める最良の方法はどれですか? 次のように、最後に [dot]h を使用します。

またはただ書いている

それとも、私が知らない別の方法を使用していますか?

ありがとう!

0 投票する
1 に答える
666 参照

c - cヒープ上に文字列を作成します

ヒープ上に文字列を作成する必要があります。標準ライブラリにすでに類似したものが含まれているのでしょうか、それとも自分で実装する必要がありますか(malloc()を使用)?

0 投票する
2 に答える
5757 参照

android - Android NDK サンプル コンパイル エラー: string.h: No such file or directory

Android ndk の例 android-ndk-r6b/samples/hello-jni をコンパイルしようとしていますが、うまくいきません。

私が得ているコンパイルエラーは次のとおりです。


環境:

同じ ndk ディレクトリ構造内にある場合でも、string.h ファイルと jni.h ファイルを検索する場所を ndk に指示する環境変数または何らかの構成が欠落しているように感じますが、私は '何が起こっているのかよくわかりません。

あらゆる種類のヒントは大歓迎です:)

0 投票する
8 に答える
4059 参照

c - 文字をCで指定された文字のセットと比較する方法は?

stdin上の文字と自分の仕様の文字を比較できるようにしたいと思います。これの目的は、コマンドとして指定された単一の文字のみを維持しながら、他のすべての入力を間違っているものとして除外することです。「nn」や「qddaw」のように->間違ってもう一度行きますが、「n」は何か便利なものになります。stdin

これが私が「コード的に」心に留めていることです:

さて、私は次のような指定された文字で配列を作成しようとしたarray[] = {'a', 'b', 'c'}ので、関数strncmpを使用してstdinの文字列と比較することができました。

しかし、それは機能していないようです。助言がありますか?

編集1:これが実際のコードです:

ご覧のとおり、私は「q」をうまく処理しましたが、複数の文字はお尻の痛みです。アドバイスありがとうございます。

編集2:つまり、入力を指定された文字のセットと比較し、1つまたは別の文字が存在する場合にのみ関数が渡される関数が必要です(ただし、文字が一緒にある場合は通過しません)。 'qs'のように)

0 投票する
6 に答える
2394 参照

c - ansiCの文字列からスペースを削除する

ansiCの文字列に単純な関数トリムスペースを書き込もうとしています。

私のstr_utis.h:

私のstr_utils.c:

実行しようとすると、segfaultが発生します。

なぜそれが間違っているのですか?どうすれば正しく書くことができますか?

ありがとうございました。