21 C
Hanoi
Thứ Hai, Tháng Mười 18, 2021
Home LẬP TRÌNH VI ĐIỀU KHIỂN STM32F103C8T6 Lập trình STM32 - Kiểu dữ liệu và nhập xuất cơ bản...

Lập trình STM32 – Kiểu dữ liệu và nhập xuất cơ bản trong C

Kiểu dữ liệu và nhập xuất cơ bản trong C

Đối với tất cả ngôn ngữ lập trình, việc kiểm soát tiêu chuẩn đầu vào, đầu ra của dữ liệu là vô cùng quan trọng. Khi làm việc với ngôn ngữ C/C++, đầu tiên phải nói đến thư viện <stdio.h> – C chuẩn (<iostream> – C++ chuẩn).

stdio.h cung cấp 2 hàm hỗ trợ nhập xuất cơ bản là printf() và scanf().
printf và scanf:

printf() viết tắt của “print formatted” nghĩa là hàm in có định dạng. Làm nhiệm vụ xuất dữ liệu ra màn hình.

Cấu trúc printf(<"chuỗi định dạng">, <danh sách tham số>). Trong đó:

  • Chuỗi định dạng “format string” làm nhiệm vụ định dạng dữ liệu xuất ra màn hình.
  • Danh sách tham số có thể bao gồm nhiều biến, hằng số, biểu thức và hàm… được phân cách bằng dấu “,” .

scanf() viết tắt của “scan formatted”  nghĩa là hàm quét có định dạng. Làm nhiệm vụ quét dữ liệu đầu vào.

Cấu trúc scanf(<định dạng kỹ thuật>, <danh sách tham chiếu>). Trong đó:

  • Định dạng kỹ thuật làm nhiệm vụ định dạng dữ liệu đầu vào.
  • Danh sách tham chiếu bao gồm các dữ liệu được truyền với dạng tham chiếu có cấu trúc được quy định là &<tên biến> dành cho các kiểu dữ liệu cơ bản “primitive data type”, còn đối với các kiểu dữ liệu dẫn xuất như chuỗi ký tự thì tham chiếu đơn giản là <tên biến>.

Chuỗi định dạng

Chuỗi định dạng trong print() được đặt trong dấu " " cho phép nhiều thành phần cùng tồn tại như:

  • Ký tự văn bản “Text characters”: là những ký tự in được, bao gồm các chữ cái, chữ số và các ký tự đặc biệt trong bảng mã ASCII.
  • Ký tự điều khiển: bao gồm một số ký tự điều khiển như tab \t, xuống dòng \n, khoảng trắng , … khoảng trắng thường được sử dụng để phân cách các trường “field” dữ liệu được xuất ra.
  • Định dạng kỹ thuật: quy định kiểu dữ liệu được xuất ra màn hình.

Ký tự điều khiển thường dùng 

\nNhảy xuống dòng kế tiếp
\tTab khoảng cách ngang 
\rNhảy về đầu hàng
\aTiếng kêu bip
\\In ký tự  \
\”In ký tự  “
\’In ký tự ‘
%%In ký tự % 

Định dạng kỹ thuật thường dùng 

%dintđịnh dạng kiểu số nguyên và tham chiếu dữ liệu hệ thập phân 
%i intđịnh dạng kiểu số nguyên và tham chiếu dữ liệu hệ thập lục phân 
%ffloatđịnh dạng kiểu số thực 
%c charđịnh dạng kiểu ký tự 
%scharacter string định dạng chuỗi ký tự 
%lfdoubleđịnh dạng kiểu số thực double 
%ldlongđịnh dạng cho một số kiểu long 
%Lflong doubleđịnh dạng cho một số kiểu long double 

Kiểu dữ liệu int8_t, int8_t, uint16_t, int16_t, uint32_t, int32_t…? trong lập trình vi điều khiển

Các kiểu dữ liệu
Các kiểu dữ liệu thường dùng và định dạng

Tham khảo: https://www.stdio.vn/

59 COMMENTS

  1. First of all I want to say terrific blog! I had a quick question in which I’d like to ask if you do not mind.
    I was curious to find out how you center yourself and clear
    your head prior to writing. I have had difficulty clearing my mind in getting my thoughts out.
    I do take pleasure in writing but it just seems like the
    first 10 to 15 minutes are generally wasted just trying
    to figure out how to begin. Any recommendations
    or tips? Appreciate it!

    Also visit my homepage – Mega888 test id free

  2. Hmm it ρpears like your site ate my first comment (it was super long) so
    I guess I’ll just sum it up what I had ᴡritten and say,
    I’m thoroughly enjoyіng your bloɡ. I too am an aspiring bog ᴡriter but I’m still
    new to the whole thing. Do you have aany tіps and hints for inexperienced blog writers?
    I’d really appreciate it.

  3. Undeniably believe that which you stated. Your favorite reason seemed to be
    on the net the easiest thing to be aware of. I say to you, I definitely
    get irked while people consider worries that they plainly
    do not know about. You managed to hit the nail upon the top and also defined
    out the whole thing without having side effect , people could take a signal.
    Will probably be back to get more. Thanks

    Take a look at my webpage: xe88 promotion

  4. Excellent blog here! Also your website quite a bit up fast!
    What host are you the use of? Can I get your affiliate link on your host?
    I want my website loaded up as quickly as yours lol

  5. The other day, while I was at work, my sister stole my iphone and
    tested to see if it can survive a forty foot drop, just so she can be a youtube sensation. My apple ipad is now destroyed and she has 83
    views. I know this is entirely off topic but I had to
    share it with someone!

  6. Having read this I believed it was very enlightening.
    I appreciate you taking the time and effort to put this article together.
    I once again find myself spending a significant amount of time both reading and posting comments.
    But so what, it was still worth it!

    Look at my site: 918kaya for pc

  7. Hey there! I just wanted to ask if you ever have any problems with hackers?

    My last blog (wordpress) was hacked and I ended up losing months of hard work due to no backup.
    Do you have any methods to protect against hackers?

    Feel free to visit my web-site … download pussy888 [Charla]

  8. I’ve been exploring for a little bit for any high quality articles or weblog
    posts in this kind of space . Exploring in Yahoo I ultimately stumbled upon this site.
    Studying this information So i’m happy to show that I have an incredibly just right uncanny feeling I found out exactly
    what I needed. I most undoubtedly will make certain to do not fail to remember this site and give it a
    look regularly.

    Here is my web blog: pussy88 slot

  9. Great goods from you, man. I’ve understand your stuff previous to and you’re just
    too magnificent. I really like what you’ve acquired here, certainly like
    what you are saying and the way in which you say it.
    You make it enjoyable and you still care for to keep it sensible.
    I cant wait to read much more from you. This is actually a
    terrific website.

    Feel free to visit my web page; pusy888 (Latonya)

  10. I have been browsing online greater than three hours today, yet I never discovered any interesting
    article like yours. It’s lovely price sufficient for me.
    Personally, if all web owners and bloggers made just right content
    material as you probably did, the net will be a lot more
    helpful than ever before.

  11. Today, I went to the beach front with my children. I found a sea shell and gave it to my 4
    year old daughter and said “You can hear the ocean if you put this to your ear.” She put the shell to her ear and screamed.
    There was a hermit crab inside and it pinched her ear. She never wants to
    go back! LoL I know this is entirely off topic but I had to tell someone!

  12. Does your site have a contact page? I’m having trouble locating it
    but, I’d like to send you an e-mail. I’ve got some
    recommendations for your blog you might be interested in hearing.
    Either way, great site and I look forward to seeing it develop
    over time.

  13. certainly like your web site however you have to
    take a look at the spelling on several of your posts.

    Several of them are rife with spelling issues and I to find it very
    troublesome to inform the reality nevertheless I’ll definitely
    come again again.

  14. Hmm is anyone else experiencing problems with the images on this blog loading?
    I’m trying to determine if its a problem on my end or if it’s the blog.
    Any suggestions would be greatly appreciated.

  15. My programmer is trying to persuade me to move to .net from PHP.
    I have always disliked the idea because of the expenses.

    But he’s tryiong none the less. I’ve been using WordPress on a
    number of websites for about a year and am worried about switching to
    another platform. I have heard good things about blogengine.net.
    Is there a way I can import all my wordpress posts into it?
    Any kind of help would be greatly appreciated!

  16. Undeniably believe that which you stated. Your favorite justification seemed
    to be on the web the simplest thing to be aware of.

    I say to you, I certainly get irked while people think about worries that
    they plainly do not know about. You managed to hit the nail upon the top as well as defined out the whole thing
    without having side-effects , people could take a signal.

    Will likely be back to get more. Thanks

  17. Thank you a lot for sharing this with all of us you really understand what you’re speaking approximately!
    Bookmarked. Kindly additionally discuss with my site =).
    We could have a link exchange agreement among us

  18. Write more, thats all I have to say. Literally, it seems as
    though you relied on the video to make your point. You definitely know what youre talking about, why waste your intelligence on just posting videos to your site when you could be giving
    us something enlightening to read?

LEAVE A REPLY

Please enter your comment!
Please enter your name here

- Advertisment -

Most Popular

Tổng hợp trang web liên quan thiết kế phần cứng điện tử

4 trang web tải thư viện SCH/PCB và 3D https://www.ultralibrarian.com/ https://componentsearchengine.com/ https://octopart.com/ https://www.snapeda.com/ https://componentsearchengine.com/ 2 trang tìm 3D cho thư viện của các bạn bao gồm: https://www.3dcontentcentral.com/ https://grabcad.com/library 4 trang cung cấp các...

Mạch đóng ngắt Relay sử dụng Transistor

Giới thiệu về Relay Rơ le (Relay) là một công tắc chuyển đổi hoạt động bằng điện. Dòng điện chạy qua cuộn dây của rơ...

Nạp Bootloader cho Arduino Pro Micro

Bootloader là một chương trình nhỏ được nạp sẵn vào chip vi điều khiển trên Arduino, nhờ đó bạn lập trình cho Arduino một...

Một vài lưu ý khi thiết kế sản phẩm đáp ứng EMC

Mỗi bảng mạch in (PCB) phải có thể hoạt động mà không bị gián đoạn do nhiễu từ các thiết bị khác và không...

Recent Comments