Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

puts() so với printf() để in chuỗi trong C

Cả puts() và printf() đều khai báo trong <stdio.h> và xuất văn bản ra luồng xuất. Nhưng có cách dùng và hiệu năng khác nhau.

puts()

In chuỗi ra stdout và tự động thêm ký tự xuống dòng '\n'. Di chuyển con trỏ xuống dòng mới. Triển khai đơn giản, nhẹ hơn printf().

Cú pháp

puts("chuoi");

Nếu không muốn xuống dòng, dùng fputs(chuoi, stdout).

Ví dụ

#include <stdio.h>
int main() {
    puts("Day la demo.");
    fputs("Khong xuong dong.", stdout);
    puts(" Welcome!");
    return 0;
}
Day la demo.
Khong xuong dong. Welcome!

printf()

In văn bản kèm giá trị biến. Triển khai phức tạp hơn (phân tích chuỗi định dạng), nên "đắt" hơn puts() về hiệu năng.

Cú pháp

printf("chuoi");

Ví dụ

#include <stdio.h>
int main() {
    int a = 10;
    printf("Hello world! \n");
    printf("Gia tri a: %d", a);
    return 0;
}
Hello world!
Gia tri a: 10

Khi nào dùng cái nào?

  • Chỉ in chuỗi tĩnh, muốn tự động xuống dòng → puts() (nhanh, gọn).
  • In chuỗi không xuống dòng → fputs().
  • Cần định dạng, chèn biến, kiểm soát chính xác → printf().