Đối số đầu tiên cho printf()
luôn là giá trị chuỗi, được gọi là chuỗi điều khiển định dạng. Chuỗi này có thể là văn bản thông thường, chẳng hạn như
printf("Hello, World\n"); // \n indicates a newline character
hoặc
char greeting[] = "Hello, World\n";
printf(greeting);
chuỗi này cũng có thể chứa một hoặc nhiều specifiers chuyển đổi; các chỉ số chuyển đổi này chỉ ra rằng các đối số bổ sung đã được chuyển đến printf()
và chúng chỉ định cách định dạng các đối số đó cho đầu ra. Ví dụ: tôi có thể thay đổi bên trên thành
char greeting[] = "Hello, World";
printf("%s\n", greeting);
Trình chỉ định chuyển đổi "% s" dự kiến con trỏ đến chuỗi 0 chấm dứt và định dạng nó thành văn bản.
Đối với đầu ra số nguyên thập phân có chữ ký, sử dụng một trong hai "% d" hay "% i" specifiers chuyển đổi, chẳng hạn như
printf("%d\n", addNumber(a,b));
Bạn có thể kết hợp văn bản thường xuyên với specifiers chuyển đổi, như vậy:
printf("The result of addNumber(%d, %d) is %d\n", a, b, addNumber(a,b));
Lưu ý rằng các thông số chuyển đổi trong chuỗi điều khiển cho biết các số số và các loại của các tham số bổ sung. Nếu số hoặc loại đối số bổ sung được chuyển đến printf()
không khớp với các trình chỉ định chuyển đổi trong chuỗi định dạng thì hành vi không được xác định. Ví dụ:
printf("The result of addNumber(%d, %d) is %d\n", addNumber(a,b));
sẽ dẫn đến bất kỳ điều gì từ kết quả bị cắt xén thành sự cố hoàn toàn.
Có một số cờ bổ sung cho các chỉ định chuyển đổi kiểm soát độ rộng trường, độ chính xác, đệm, biện minh và loại. Kiểm tra hướng dẫn tham khảo C tiện dụng của bạn để có danh sách đầy đủ.
Bạn có thể tìm thấy http://www.cppreference.com/wiki/ rất hữu ích, xem phần trên Thư viện chuẩn C. –