問題タブ [char]
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.
c++ - (C++) データベースのヘルプが必要
データベースを作成しようとしていますが、これまでのところ、文字列を使用してエントリをテキスト ファイルから配列に格納してきましたが、うまくいきません。そこで、新しい方法を考え始めました。
私がしたいこと:
次のデータベースを含むテキストファイルがあるとしましょう...
ジョン・スミス 00001 jsmith@email pw1
ロブ・デニロ 00002 rdeniro@email pw2
アル・パチーノ 00003 apacino@email pw3
ジョー・ペシ 00004 jpesci@email 307 pw4
ジョアック・フェニックス 00005 jphoe@email 208 pw5
ジョン・マッデン 00006 jmadden@email 708 pw6
さて、基本的に私が立ち往生しているのは、この「継承」をフレンドリーにすることです。各エントリを保存するための最良の方法は何ですか? 個々の弦?空白が発生するまで個々の文字を保存してから文字列に保存するのが最善の方法だと考えていましたが、それがどのように行われるかわかりません。
.net - dotnet の char.IsLower() が静的メソッドなのはなぜですか?
これは、すべての設計ガイドラインに反するようです。型 T の単一の引数を受け入れる静的メソッドは、通常、単なるメンバー メソッドであるべきです。
IsUpper が存在することを理解するために、実際にStackOverflow の質問を投稿する必要がありました (オートコンプリートに表示されなかったため)。
編集
私の以前の発言には少し説明が必要であることは理解しています。良い設計の例は String.ToLower() です。static void ToLower(String foo) としてプロトタイプ化される代わりに、メンバー メソッドです。同じことがchar.IsLower()にも当てはまることは(少なくとも私には)明らかです。
java - Java:文字が特定のユニコードブロックに属しているかどうかを確認する方法は?
入力がどの自然言語に属しているかを特定する必要があります。目標は、混合入力でアラビア語と英語の単語を区別することです。入力は Unicode であり、XML テキスト ノードから抽出されます。クラスに気づきましたCharacter.UnicodeBlock
。それは私の問題に関連していますか?どうすれば動作させることができますか?
編集:
このアプローチはアラビア語には役立ちましたが、 Unicode ブロックは文字だけでなく記号や印刷不可能な文字もカバーしてCharacter.UnicodeBlock
いるため、英語 (または他のヨーロッパ言語) には適していないようです。そのため、代わりに正規表現を使用してオブジェクトのメソッドをBASIC_LATIN
使用しています。私はそれで暮らすことができますが、おそらく誰かがより良い/より速い方法を提案することができます.matches()
String
"[A-Za-z]+"
c - Cで構造体をchar配列に変換する方法
ネットワーク経由で送信するために、構造体を char 配列に変換しようとしています。ただし、そうすると、char配列から奇妙な出力が得られます。
ax のさまざまな値の出力を次に示します (gcc を使用する X86 で):
127:
7f 00 00 00
127 0 0 0
128:
ffffff80 00 00 00
-128 0 0 0
255:
フフフフフ 00 00 00
-1 0 0 0
256:
00 01 00 00
0 1 0 0
127 と 256 の値は理解できますが、128 になると数値が変わるのはなぜですか? 80 00 00 00 128 0 0 0 ではない理由
変換プロセスで何かをするのを忘れていますか、それとも整数表現について何かを忘れていますか?
*注: これは小さなテスト プログラムです。実際のプログラムでは、構造体にもっと多くの変数名があり、リトルエンディアンに変換します。
*編集:フォーマット
c++ - Cの文字リテラルがcharではなくintなのはなぜですか?
C++ では、sizeof('a') == sizeof(char) == 1
. 'a'
は文字リテラルでありsizeof(char) == 1
、標準で定義されているため、これは直感的に理解できます。
ただし、C ではsizeof('a') == sizeof(int)
. つまり、C 文字リテラルは実際には整数のように見えます。誰かが理由を知っていますか?この C の癖についての言及はたくさんありますが、なぜそれが存在するのかについての説明はありません。
c++ - char!=(符号付き文字)、char!=(符号なし文字)
以下のコードはコンパイルされますが、char 型と int 型では動作が異なります。
特に
int8、uint8、および char の 3 つのタイプのテンプレートが 3 つインスタンス化されます。何を与える?
同じことは int には当てはまりません: int と uint32 は同じテンプレートのインスタンス化をもたらし、別の int を署名します。
その理由は、C++ が char、signed char、および unsigned char を 3 つの異なる型として認識しているためと思われます。一方、int は signed int と同じです。これは正しいですか、それとも何か不足していますか?
私はg ++ 4.somethingを使用しています
c++ - 単一の char を int に変換する方法
「123456789」などの数字の文字列があり、計算で使用するには、それぞれを抽出する必要があります。もちろん、各 char にインデックスでアクセスできますが、どうすれば int に変換できますか?
atoi() を調べましたが、文字列を引数として取ります。したがって、各 char を文字列に変換してから、atoi を呼び出す必要があります。より良い方法はありますか?
c - 文字に署名することはどういう意味ですか?
符号付きintと符号なしintは同じレジスタなどを使用し、ビットパターンの解釈が異なるだけで、C文字は基本的に8ビットintであるとすると、Cの符号付き文字と符号なし文字の違いは何ですか?charの符号は実装で定義されていることを理解しています。少なくとも、charが数学ではなく文字列を保持するために使用されている場合、それがどのように違いを生むことができるかを理解できません。
c - const char **に値を設定する方法は?
変数constchar** stringTableを宣言した場合、それがconstである場合、どのように値を設定できますか?(私が使用することになっている関数は、パラメーターとしてconst char **を受け取るため、constである必要があります。)
編集:いいえ、暗黙的にchar**からconstchar**に変換することはできません。コンパイラが文句を言います:パラメータ3を'char**'から'constchar**'に変換できません
sql - SQL ORDER 文字の数値
文字として格納された数値の列があります。この列に対して ORDER BY を実行すると、次のようになります。
100
131
200
21
30
31000
など
これらの文字を数値で並べ替えるにはどうすればよいですか? 何かを変換する必要がありますか?それとも、そのための SQL コマンドまたは関数が既に存在しますか?
ありがとうございました。