Найти Π² Π”Π·Π΅Π½Π΅

πŸ’₯ Ошибки компиляции: ΠΏΠΎΡ‡Π΅ΠΌΡƒ это Π½Π΅ ΠΏΠΎΠ²ΠΎΠ΄ Π±Ρ€ΠΎΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΡŒ Ρ€Π°Π· писали ΠΊΠΎΠ΄ β€” Π½Π° Arduino, Python, Π‘++ ΠΈΠ»ΠΈ Ρ‡Π΅Π³ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ β€” навСрняка ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ с ошибкой компиляции. Иногда эта β€œΡ€Π°Π΄ΠΎΡΡ‚ΡŒβ€ Π²Ρ‹Π»Π΅Π·Π°Π΅Ρ‚ ΠΈΠ· Π½ΠΈΠΎΡ‚ΠΊΡƒΠ΄Π°: error: expected ';' before '}' token β€” ΠΈ Π²Ρ‹ Π·Π°ΠΌΠΈΡ€Π°Π΅Ρ‚Π΅ с ΠΌΡ‹ΡΠ»ΡŒΡŽ: β€œΠ§Ρ‚ΠΎ? Π“Π΄Π΅?! Π― ΠΆΠ΅ просто Ρ…ΠΎΡ‚Π΅Π» Π»Π°ΠΌΠΏΠΎΡ‡ΠΊΡƒ ΠΏΠΎΠΌΠΈΠ³Π°Ρ‚ΡŒ!” Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ любой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ошибки β€” это Π½Π΅ Π±Π°Π³, это Ρ„ΠΈΡ‡Π°. Π’Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄ для Arduino, Π²Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ всё просто: void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
digitalWrite(ledPin, HIGH)
} Ошибка!
А всё ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° с запятой послС digitalWrite(ledPin, HIGH). ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ β€œexpected β€˜;’ before β€˜}’”, Π½ΠΎ Π½Π΅ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚, КАК Π²Ρ‹ΠΆΠΈΡ‚ΡŒ послС этого сообщСния. Π—Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅: Ссли Ρƒ вас ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΠΏΠΎΠ±Π΅Π΄ΠΈΡ‚ΡŒ Ρ…ΠΎΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΎΡˆΠΈΠ±ΠΊΡƒ β€” Π²Ρ‹ ΡƒΠΆΠ΅ программист!
КаТдая ошибка β€” это шаг ΠΊ ΠΎΠΏΡ‹Ρ‚Ρƒ, ΠΊΠ°ΠΊ Π½ΠΈ банально. Π”Π°ΠΆΠ΅ Ссли ΠΈΠ½ΠΎΠ³Π΄Π° Ρ€ΡƒΠΊΠΈ ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ β€” ΠΎΠΏΠ΅Ρ€ΠΈΡ‚Π΅ΡΡŒ Π½Π° Π½ΠΈΡ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ снова ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒΡΡ. Π’Π΅Ρ€ΡŒΡ‚Π΅ Π² сСбя. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Π΅Π»ΠΈΠΊΠΎΠ³ΠΎ Π°ΠΉΡ‚ΠΈΡˆΠ½ΠΈΠΊΠ° Π² ΡˆΠΊΠ°Ρ„Ρƒ скСлСт ΠΈΠ· сотСн β€œΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΎΡˆΠΈΠ±ΠΎΠΊβ€.
ОглавлСниС

πŸ”§ НС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚? ΠŸΠΎΠ·Π΄Ρ€Π°Π²Π»ΡΡŽ, Π²Ρ‹ Π² Ρ‚Π΅ΠΌΠ΅!

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΡŒ Ρ€Π°Π· писали ΠΊΠΎΠ΄ β€” Π½Π° Arduino, Python, Π‘++ ΠΈΠ»ΠΈ Ρ‡Π΅Π³ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ β€” навСрняка ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ с ошибкой компиляции. Иногда эта β€œΡ€Π°Π΄ΠΎΡΡ‚ΡŒβ€ Π²Ρ‹Π»Π΅Π·Π°Π΅Ρ‚ ΠΈΠ· Π½ΠΈΠΎΡ‚ΠΊΡƒΠ΄Π°:

error: expected ';' before '}' token

β€” ΠΈ Π²Ρ‹ Π·Π°ΠΌΠΈΡ€Π°Π΅Ρ‚Π΅ с ΠΌΡ‹ΡΠ»ΡŒΡŽ: β€œΠ§Ρ‚ΠΎ? Π“Π΄Π΅?! Π― ΠΆΠ΅ просто Ρ…ΠΎΡ‚Π΅Π» Π»Π°ΠΌΠΏΠΎΡ‡ΠΊΡƒ ΠΏΠΎΠΌΠΈΠ³Π°Ρ‚ΡŒ!”

Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ любой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ошибки β€” это Π½Π΅ Π±Π°Π³, это Ρ„ΠΈΡ‡Π°.

πŸ€” ΠŸΠΎΡ‡Π΅ΠΌΡƒ ошибки β€” это Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ?

  • Ошибки компиляции, Π±Π°Π³ΠΈ, Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹Π΅ β€œΠ½Π΅ΠΏΠΎΠ½ΡΡ‚ΠΊΠΈβ€ Π² ΠΊΠΎΠ΄Π΅ ΡΠ»ΡƒΡ‡Π°ΡŽΡ‚ΡΡ Ρƒ всСх β€” Ρƒ ΠΏΡ€ΠΎΡ„ΠΈ, Ρƒ ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρƒ Ρ…Π°Ρ€Π΄ΠΊΠΎΡ€Π½Ρ‹Ρ… Π°ΠΉΡ‚ΠΈΡˆΠ½ΠΈΠΊΠΎΠ² с Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΡŒΡŽ Π³ΠΎΠ΄Π°ΠΌΠΈ стаТа.
  • Π­Ρ‚ΠΎ Ρ‡Π°ΡΡ‚ΡŒ процСсса обучСния ΠΈ роста. Ошибки ΡƒΡ‡Π°Ρ‚ вас Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ, Π΄ΡƒΠΌΠ°Ρ‚ΡŒ, ΠΈΡΠΊΠ°Ρ‚ΡŒ нСстандартныС ΠΏΡƒΡ‚ΠΈ.
  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это Π½Π΅ магия. Π­Ρ‚ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… экспСримСнтов, Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Π½Π΅ Ρ‚Π°ΠΊ. И это Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ.

🚧 Π‘Π°ΠΌΡ‹Π΅ частыС ошибки Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² (ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ)

  • Вупая ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠ°. ΠžΠ΄Π½Ρƒ Π±ΡƒΠΊΠ²Ρƒ пропустили β€” ΠΈ компилятор ΡƒΠΆΠ΅ устраиваСт истСрику.
  • ΠŸΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Π½Π°Ρ скобка ΠΈΠ»ΠΈ Ρ‚ΠΎΡ‡ΠΊΠ° с запятой. МоТно часами ΠΈΡΠΊΠ°Ρ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.
  • НСвСрноС имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π’Ρ€ΠΎΠ΄Π΅ temp, Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ мСстС temΡ€ (русская β€œΡ€β€ вмСсто латинской) β€” ΠΈ всё.
  • ΠšΠΎΠΏΠΈΠΏΠ°ΡΡ‚ ΠΈ забытая ΠΏΡ€Π°Π²ΠΊΠ°. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ΄Π½Π° пСрСмСнная, Π² вашСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ β€” другая.
  • НСвСрный Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…. Π₯ΠΎΡ‚Π΅Π»ΠΈ int, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ String β€” компилятор Π² шокС.
  • Аппаратная ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Π°. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ свСтодиод Π½Π΅ Ρ‚ΡƒΠ΄Π°, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΠΈΡ‰Π΅Ρ‚Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² ΠΊΠΎΠ΄Π΅.

πŸ˜… ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ· ΠΆΠΈΠ·Π½ΠΈ

Π’Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄ для Arduino, Π²Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ всё просто:

void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
digitalWrite(ledPin, HIGH)
}

Ошибка!

А всё ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° с запятой послС digitalWrite(ledPin, HIGH). ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚
β€œexpected β€˜;’ before β€˜}’”, Π½ΠΎ Π½Π΅ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚, КАК Π²Ρ‹ΠΆΠΈΡ‚ΡŒ послС этого сообщСния.

βœ‹ Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли всё валится ΠΈΠ· Ρ€ΡƒΠΊ?

  1. Π”Ρ‹ΡˆΠΈΡ‚Π΅. Π­Ρ‚ΠΎ Π½Π΅ ΠΊΠΎΠ½Π΅Ρ† свСта. Ошибка β€” Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡƒΡ‚ΠΈ.
  2. Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. БообщСния компилятора β€” Π½Π΅ заклинания. Π’Π°ΠΌ ΠΈΠ½ΠΎΠ³Π΄Π° Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ написано, Π³Π΄Π΅ ΠΈ Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ.
  3. Π“ΡƒΠ³Π»ΠΈΡ‚Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ. 99% случаСв β€” ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΡƒΠΆΠ΅ сталкивался с этим, особСнно Π² Arduino.
  4. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. НачинайтС с самого простого: скобки, Ρ‚ΠΎΡ‡ΠΊΠΈ с запятой, ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ….
  5. ΠŸΠΎΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ. Иногда взгляд со стороны Π²ΠΈΠ΄ΠΈΡ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ пропустили.
  6. Часто ΡΠΎΡ…Ρ€Π°Π½ΡΠΉΡ‚Π΅ΡΡŒ. ΠšΠ°Ρ‚Π°ΡΡ‚Ρ€ΠΎΡ„ΠΈΡ‡Π΅ΡΠΊΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию Π½Π° случай катастрофы.

🌱 НС ΡΠ΄Π°Π²Π°ΠΉΡ‚Π΅ΡΡŒ!

  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это Π½Π΅ спринт, Π° ΠΌΠ°Ρ€Π°Ρ„ΠΎΠ½.
  • Ошибки β€” ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΈ ΠΏΡ€ΠΎΠ±ΡƒΠ΅Ρ‚Π΅ Π½ΠΎΠ²ΠΎΠ΅.
  • Π§Π΅ΠΌ большС ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π΅Ρ‚Π΅ΡΡŒ с ошибками β€” Ρ‚Π΅ΠΌ быстрСС растётС.
  • Π”Π°ΠΆΠ΅ Ссли каТСтся, Ρ‡Ρ‚ΠΎ "Ρƒ всСх всё получаСтся, Π° я Ρ‚ΡƒΠΏΠ»ΡŽ" β€” это иллюзия. Π£ всСх всё Ρ‡Π΅Ρ€Π΅Π· Ρ‚Π΅Ρ€Π½ΠΈΠΈ, просто ΠΏΡ€ΠΎΡ„ΠΈ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ Π½Π΅ Π±ΠΎΡΡ‚ΡŒΡΡ ошибок.

πŸ› οΈ Arduino β€” ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ Ρ‚Ρ€Π΅Π½Π°ΠΆΡ‘Ρ€ тСрпСния

  • Arduino β€” это ΠΌΠ½ΠΎΠ³ΠΎ Ρ„ΠΈΠ·ΠΈΠΊΠΈ, ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ², схСм, ΠΊΠΎΠ΄Π°.
  • Ошибка ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΠ΄Π΅, Π½ΠΎ ΠΈ Π² ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ.
  • НС Π±ΠΎΠΉΡ‚Π΅ΡΡŒ ΠΈΡΠΊΠ°Ρ‚ΡŒ совСт β€” Π² Ρ„ΠΎΡ€ΡƒΠΌΠ°Ρ…, Ρ‡Π°Ρ‚Π°Ρ…, Π±Π»ΠΎΠ³Π°Ρ…, Π΄Π°ΠΆΠ΅ Ρƒ ИИ.

πŸš€ Π’Π΄ΠΎΡ…Π½ΠΎΠ²Π»ΡΡŽΡ‰ΠΈΠΉ Ρ„ΠΈΠ½Π°Π»

Π—Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅: Ссли Ρƒ вас ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΠΏΠΎΠ±Π΅Π΄ΠΈΡ‚ΡŒ Ρ…ΠΎΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΎΡˆΠΈΠ±ΠΊΡƒ β€” Π²Ρ‹ ΡƒΠΆΠ΅ программист!

КаТдая ошибка β€” это шаг ΠΊ ΠΎΠΏΡ‹Ρ‚Ρƒ, ΠΊΠ°ΠΊ Π½ΠΈ банально. Π”Π°ΠΆΠ΅ Ссли ΠΈΠ½ΠΎΠ³Π΄Π° Ρ€ΡƒΠΊΠΈ ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ β€” ΠΎΠΏΠ΅Ρ€ΠΈΡ‚Π΅ΡΡŒ Π½Π° Π½ΠΈΡ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ снова ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒΡΡ.

Π’Π΅Ρ€ΡŒΡ‚Π΅ Π² сСбя. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Π΅Π»ΠΈΠΊΠΎΠ³ΠΎ Π°ΠΉΡ‚ΠΈΡˆΠ½ΠΈΠΊΠ° Π² ΡˆΠΊΠ°Ρ„Ρƒ скСлСт ΠΈΠ· сотСн β€œΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΎΡˆΠΈΠ±ΠΎΠΊβ€.