2

私はArduinoでプログラミングすることを学んでおり、私が理解している限り、それはC言語を使用しています(間違っている場合は訂正してください)。

私はJavaScriptとPHPの先輩ですが、文字列処理などの単純なものに苦労しています。

JavaScriptの場合私は持っています

var c = 33;
var myString = "hello" + c;
alert(myString); //---> hello33

C / Arduinoではどのように機能しますか?

4

4 に答える 4

3

C では、次のようにします。

char buff[100]; // needs to be large enough.
int c = 33;
sprintf (buff, "hello%d", c); // may want a space after hello

// Now do something with buff.

C は、いくつかの低レベルの詳細を自分で管理する必要がある言語です。基本言語/ライブラリには自動的に拡張される文字列型はありませんが、いくつかの優れたサードパーティ製のものがあることは間違いありません (たとえば、 「より良い文字列」は、必要のない他の多くのものをドラッグしないためです)。 、特に埋め込みスペースで重要です)。

于 2012-04-08T02:15:33.310 に答える
2

Arduino には組み込みのString クラスがあり、その中で次のことができます。

String stringOne = "A long integer: ";
// using += to add a long variable to a string:
stringOne += 123456789;

// or

stringTwo.concat(123456789);

両方の場合が得られる場合"A long integer: 123456789"

于 2012-04-08T03:48:07.293 に答える
2

2 つのヘルパー ライブラリを使用することを強くお勧めします。これらを組み合わせることで、文字列の使用が非常に簡単になります!

PString: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1236036180 だからあなたは書くことができます...

str.print("The temperature is ");
str.print(temp);
str.println(" degrees.");
// do something with str here

ストリーミング: http://arduiniana.org/libraries/streaming/ だからあなたは書くことができます...

lcd << "GPS #" << gpsno << " date: " << day << "-" << month << "-" << year << endl;
于 2012-04-08T09:19:28.627 に答える
0

Arduino スケッチとしての JavaScript コードに相当するものは次のとおりです。

void setup() {
  Serial.begin(9600);
  int c = 33;                 // var c = 33;
  String myString = "hello";  // var myString = "hello"
  myString += c;              //                        + c;
  Serial.println(myString);   // alert(myString); //---> hello33
}

void loop() {
}

文字列処理の場合、JavaScript と Arduino (C++) コードの違いは次のとおりです。

  • 変数は厳密に型指定されています。たとえば、変数を宣言するときに、変数が整数 ( int) か文字列 ( ) かを示す必要があります。String
  • 文字列は C++ の組み込みの「プリミティブ」型ではないため (また、C++ の Arduino バージョンも C++ 標準ライブラリ文字列をサポートしていません)、いくつかの単純な操作を単一のステートメントとして実行することはできません。たとえば、割り当てと連結には 2 行の Arduino コードが必要です。

JavaScript と Arduino (C++) コードのその他の重要な違いは次のとおりです。

  • 関数ではなく、関数setupと関数の両方が必要です。Arduino ボードに電源が投入されたときに 1 回だけ実行され、その後継続的に実行されます。loopmainsetuploop
  • Arduinoの JavaScript に最も近いものはalert、シリアル ポートへの書き込みです。この出力を表示するには、Arduino ボードを PC に接続する必要があります。Arduino IDE 内でシリアル モニターをオンにすると、出力を確認できます。
于 2012-04-10T21:35:31.523 に答える