2016-07-28 28 views
0

私はコマンドラインから入力が必要な数学パーサーをやっています。 は、だから私はそれをやったが、私は ' `* 3のようなI入力式が(2)。通常の入力では、それが働いているとき。このよう*(としてコマンドラインプログラムへの引数の受け渡し

+1

が – Caius

+0

は、ああ、私はそれを解決..私はそれが入力3 *(2」のように必要ないくつかのコードを貼り付けてくださいを) 'damn –

+1

あなたは'普通の入力 'が何であるかを明確にする必要があります(例または2つ)。 –

答えて

4

特定の文字を(bashは-bash: syntax error near unexpected tokenと私にエラーを与えている問題があり、 )はシェルにとって特別な意味を持っているあなたは、あなたのプログラムを呼び出すときにバックスラッシュでエスケープする必要があります。

./myprog 3 \* \(2 \) 
+0

ありがとうございますが、すでに '3 *(2)'と一緒に働いています –

+2

@JakubStibůrek:バックスラッシュdbushが述べたのはその理由です。彼らはシェルに特別な意味を持っています。 –

+0

二重引用符はおそらく関連する入力の種類に対しても機能しますが、一重引用符はより安全です。 –

関連する問題