platform, Arduino does not have runtime error exception handling). Run dịch - platform, Arduino does not have runtime error exception handling). Run Việt làm thế nào để nói

platform, Arduino does not have run

platform, Arduino does not have runtime error exception handling). Running out of dynamic memory is a bug that can be very difficult to track down because the sketch can run without problems for days or weeks before it starts misbehaving through in- sufficient memory.
If you use C character arrays, you are in control of memory usage: you’re allocating a fixed (static) amount of memory at compile time so you don’t get memory leaks. Your Arduino sketch will have the same amount of memory available to it all the time it’s running. And if you do try to allocate more memory than available, finding the cause is easier because there are tools that tell you how much static memory you have allo- cated (see the reference to avr-objdump in Recipe 17.1).
However, with C character arrays, it’s easier for you to have another problem: C will not prevent you from modifying memory beyond the bounds of the array. So if you allocate an array as myString[4], and assign myString[4] = 'A' (remember, myString[3] is the end of the array), nothing will stop you from doing this. But who knows what piece of memory myString[4] refers to? And who knows whether assigning 'A' to that memory location will cause you a problem? Most likely, it will cause your sketch to misbehave.
So, Arduino’s built-in String library, by virtue of using dynamic memory, runs the risk of eating up your available memory. C’s character arrays require care on your part to ensure that you do not exceed the bounds of the arrays you use. So use Arduino’s built- in String library if you need rich text handling capability and you won’t be creating and modifying Strings over and over again. If you need to create and modify them in a loop that is constantly repeating, you’re better off allocating a large C character array and writing your code carefully so you don’t write past the bounds of that array.
Another instance where you may prefer C character arrays over Arduino Strings is in large sketches that need most of the available RAM or flash. The Arduino String ToInt example code uses almost 2 KB more flash than equivalent code using a C char- acter array and atoi to convert to an int. The Arduino String version also requires a little more RAM to store allocation information in addition to the actual string.
If you do suspect that the String library, or any other library that makes use of dynam- ically allocated memory, might be leaking memory, you can determine how much memory is free at any given time; see Recipe 17.2. Check the amount of RAM when your sketch starts, and monitor it to see whether it’s decreasing over time. If you suspect a problem with the String library, search the list of open bugs (http://code.google.com/ p/arduino/issues/list) for “String.”
See Also
The Arduino distribution provides String example sketches (File→Examples→Strings). The String reference page can be found at http://arduino.cc/en/Reference/StringObject.
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
nền tảng, Arduino không có thời gian chạy lỗi xử lý ngoại lệ). Chạy ra khỏi bộ nhớ năng động là một lỗi mà có thể rất khó để theo dõi bởi vì các ký họa có thể chạy mà không có vấn đề cho ngày hoặc vài tuần trước khi nó bắt đầu hỏng thông qua tại - đủ bộ nhớ.Nếu bạn sử dụng C nhân vật mảng, bạn đang ở trong kiểm soát của sử dụng bộ nhớ: bạn đang phân bổ một số tiền cố định (tĩnh) của bộ nhớ tại thời gian biên dịch để bạn không có rò rỉ bộ nhớ. Ký họa Arduino của bạn sẽ có cùng một lượng bộ nhớ có sẵn cho nó tất cả thời gian nó đang chạy. Và nếu bạn cố gắng cấp phát bộ nhớ nhiều hơn có sẵn, bạn tìm ra nguyên nhân là dễ dàng hơn bởi vì có những công cụ cho bạn biết bao nhiêu bộ nhớ tĩnh có allo-cated (xem tham chiếu đến avr-objdump trong công thức 17.1).Tuy nhiên, với nhân vật C hình mảng, nó dễ dàng hơn cho bạn để có một vấn đề khác: C sẽ không ngăn bạn từ việc sửa đổi bộ nhớ ở xa các giới hạn của mảng. Vì vậy, nếu bạn cấp phát một mảng là myString [4], và chỉ định myString [4] = 'A' (nhớ, myString [3] là kết thúc của các mảng), không có gì sẽ dừng bạn từ làm điều này. Nhưng những người hiểu biết những gì mảnh bộ nhớ myString [4] đề cập đến? Và những người hiểu biết cho dù giao việc 'A' để vị trí bộ nhớ đó sẽ làm cho bạn một vấn đề? Nhiều khả năng, nó sẽ gây ra của bạn ký họa để misbehave.Vì vậy, của Arduino được xây dựng trong chuỗi thư viện, bởi Đức hạnh của bằng cách sử dụng bộ nhớ năng động, chạy các nguy cơ ăn lên bộ nhớ có sẵn của bạn. C của nhân vật mảng yêu cầu chăm sóc về phía bạn để đảm bảo rằng bạn không vượt quá các giới hạn của mảng bạn sử dụng. Để sử dụng Arduino của xây dựng - trong chuỗi thư viện nếu bạn cần văn bản định dạng xử lý khả năng và bạn sẽ không được tạo ra và sửa đổi dây hơn và hơn nữa. Nếu bạn cần để tạo ra và thay đổi chúng trong một vòng lặp liên tục lặp đi lặp lại, bạn đang tốt hơn hết phân bổ một mảng lớn nhân vật C và viết mã của bạn một cách cẩn thận để bạn không viết qua các giới hạn của mảng đó.Một ví dụ nơi bạn có thể thích C nhân vật mảng trên Arduino dây là trong phác thảo lớn cần hầu hết có RAM hoặc flash. Arduino chuỗi ToInt ví dụ mã sử dụng gần như 2 KB hơn flash hơn tương đương mã bằng cách sử dụng một C char-acter mảng và atoi để chuyển đổi để một int. Phiên bản Arduino chuỗi cũng đòi hỏi một chút thêm RAM để lưu trữ thông tin phân bổ ngoài chuỗi thực tế.Nếu bạn nghi ngờ rằng thư viện String, hoặc bất kỳ thư viện khác mà làm cho việc sử dụng dynam - ically cấp phát bộ nhớ, có thể rò rỉ bộ nhớ, bạn có thể xác định bao nhiêu bộ nhớ hoàn toàn miễn phí tại bất kỳ thời điểm nào đó; xem công thức 17.2. Kiểm tra lượng bộ nhớ RAM khi ký họa của bạn bắt đầu, và theo dõi để xem liệu nó giảm theo thời gian. Nếu bạn nghi ngờ một vấn đề với thư viện chuỗi, tìm danh sách mở lỗi (http://code.google.com/ p/arduino/vấn đề/danh) "String."See AlsoThe Arduino distribution provides String example sketches (File→Examples→Strings). The String reference page can be found at http://arduino.cc/en/Reference/StringObject.
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
nền tảng, Arduino không có thời gian chạy lỗi ngoại lệ xử lý). Chạy ra khỏi bộ nhớ động là một lỗi mà có thể rất khó để theo dõi bởi vì các ký họa có thể chạy mà không có vấn đề cho ngày hoặc vài tuần trước khi nó bắt đầu hỏng thông qua bộ nhớ đủ tư.
Nếu bạn sử dụng mảng ký tự C, bạn đang ở trong kiểm soát của bộ nhớ cách sử dụng: bạn đang phân bổ một (static) số tiền cố định của bộ nhớ tại thời gian biên dịch, do đó bạn không nhận được rò rỉ bộ nhớ. Arduino ký họa của bạn sẽ có cùng một lượng bộ nhớ có sẵn cho tất cả thời gian nó đang chạy. Và nếu như bạn cố gắng để cấp phát bộ nhớ hơn có sẵn, tìm ra nguyên nhân dễ dàng hơn vì có các công cụ cho bạn biết bao nhiêu bộ nhớ tĩnh bạn đã allo- tạp (xem tham khảo để AVR-objdump trong Recipe 17,1).
Tuy nhiên, với C mảng ký tự, nó dễ dàng hơn cho bạn để có một vấn đề khác: C sẽ không ngăn cản bạn từ sửa đổi bộ nhớ ngoài giới hạn của mảng. Vì vậy, nếu bạn phân bổ một mảng như myString [4], và gán myString [4] = 'A' (nhớ, myString [3] là sự kết thúc của mảng), sẽ không có gì ngăn cản bạn làm điều này. Nhưng ai biết được những gì từ các bộ nhớ myString [4] đề cập đến? Và ai mà biết được liệu giao 'A' đến vị trí bộ nhớ sẽ làm cho bạn một vấn đề? Nhiều khả năng, nó sẽ gây ra họa của bạn để hoạt động sai.
Vì vậy, Arduino của thư viện có sẵn String, nhờ sử dụng bộ nhớ động, chạy các nguy cơ của việc ăn lên bộ nhớ có sẵn của bạn. Mảng ký tự C của yêu cầu chăm sóc trên một phần của bạn để đảm bảo rằng bạn không vượt quá giới hạn của mảng mà bạn sử dụng. Vì vậy, sử dụng built- Arduino trong thư viện string nếu bạn cần khả năng xử lý văn bản phong phú và bạn sẽ không được tạo ra và sửa đổi Strings hơn và hơn nữa. Nếu bạn cần để tạo và chỉnh sửa chúng trong một vòng lặp đó là liên tục lặp đi lặp lại, bạn nên phân bổ một mảng C nhân vật lớn và viết mã của bạn một cách cẩn thận để bạn không viết qua các giới hạn của mảng đó.
Ví dụ khác, nơi bạn có thể thích mảng ký tự C trên Arduino Strings là trong bản phác thảo lớn mà cần nhất của bộ nhớ RAM có sẵn hoặc flash. Đoạn mã ví dụ Arduino chuỗi ToInt sử dụng gần 2 KB hơn đèn flash hơn mã tương đương sử dụng một mảng C trưng acter và atoi để chuyển đổi một int. Các phiên bản Arduino dây cũng đòi hỏi nhiều hơn một chút RAM để phân bổ thông tin lưu trữ ngoài các chuỗi thực tế.
Nếu bạn nghi ngờ rằng các thư viện String, hoặc bất kỳ thư viện khác mà làm cho sử dụng dynam- cấp phát bộ nhớ ically, có thể bị rò rỉ bộ nhớ, bạn có thể xác định có bao nhiêu bộ nhớ là miễn phí tại bất kỳ thời gian nhất định; xem Recipe 17.2. Kiểm tra lượng RAM khi phác thảo của bạn bắt đầu, và giám sát nó để xem liệu nó giảm theo thời gian. Nếu bạn nghi ngờ một vấn đề với các thư viện String, tìm kiếm danh sách các lỗi còn mở (http://code.google.com/ p / Arduino / vấn đề / list) cho "String."
Xem thêm
Sự phân bố Arduino cung cấp chuỗi ví dụ phác thảo ( File → Ví dụ → Strings). Các trang tham khảo String có thể được tìm thấy tại http://arduino.cc/en/Reference/StringObject.
đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2025 I Love Translation. All reserved.

E-mail: