2

アセンブリ コードのコンパイルに問題があります。

gcc の戻り値: func_select.s:5: エラー: ニーモニックの無効な文字 (0xe2) func_select.s:7: エラー: ニーモニックの無効な文字 (0xe2)

コードは次のとおりです(5〜7行目):

secondStringLength:     ‫‪.string " second pstring length: %d‬‬\n"
OldChar:                .string "‫‪old char: %c,‬‬"
NewChar:                ‫‪.string " new char: %c,‬‬"

どうすればこれを修正できますか?

4

2 に答える 2

2

イガンシオ・バスケス=エイブラムスは正しい。詳細を提供するために、xxdこれによると、最初の行は次のとおりです。

$ cat b | xxd
00000000: 7365 636f 6e64 5374 7269 6e67 4c65 6e67  secondStringLeng
00000010: 7468 3a20 2020 2020 e280 abe2 80aa 2e73  th:     .......s
00000020: 7472 696e 6720 2220 7365 636f 6e64 2070  tring " second p
00000030: 7374 7269 6e67 206c 656e 6774 683a 2025  string length: %
00000040: 64e2 80ac e280 ac5c 6e22 0a0a            d......\n"..

注:e2 80 abそしてe2 80 aa. これらは前述のU+202Bとです。U+202Aそれらを削除します(次の 2 も同様U+202C)。

于 2015-12-15T07:37:19.777 に答える
2

テキストに埋め込まれた書式設定文字を削除します。

$ charinfo 'secondStringLength:‫‪.string " second pstring length: %d‬‬\n"'
U+0073 LATIN SMALL LETTER S [Ll]
U+0065 LATIN SMALL LETTER E [Ll]
 ...
U+0068 LATIN SMALL LETTER H [Ll]
U+003A COLON [Po]
U+202B RIGHT-TO-LEFT EMBEDDING [Cf]
U+202A LEFT-TO-RIGHT EMBEDDING [Cf]
U+002E FULL STOP [Po]
U+0073 LATIN SMALL LETTER S [Ll]
 ...
U+0025 PERCENT SIGN [Po]
U+0064 LATIN SMALL LETTER D [Ll]
U+202C POP DIRECTIONAL FORMATTING [Cf]
U+202C POP DIRECTIONAL FORMATTING [Cf]
U+005C REVERSE SOLIDUS [Po]
U+006E LATIN SMALL LETTER N [Ll]
U+0022 QUOTATION MARK [Po]
于 2015-12-15T07:20:35.360 に答える