#include <stdio.h>
const char * msg[] = {"Để ghi dữ liệu vào file, chúng ta có các hàm đã được định nghĩa sẵn trong thư viện cstdio như sau:\n",
"\tHàm fputc sẽ ghi ký tự có mã ASCII là c vào file được trỏ đến bởi con trỏ f. Giá trị trả về là EOF nếu ghi dữ liệu thất bại, trả về mã ASCII của kí tự được ghi vào nếu thực hiện thành công.\n",
"\tHàm fputs ghi một C-Style string vào file được trỏ đến bởi con trỏ f cho đến khi gặp kí tự \\0. \n",
"\tHàm fprintf tương tự hàm printf trong ngôn ngữ C. Tuy nhiên, hàm printf được mặc định liên kết với đối tượng FILE có tên là stdout nên sử dụng hàm printf sẽ ghi nội dung ra màn hình.\n"};
void writeToFile(FILE* file);
int main(int argc, const char * argv[]) {
const char *filePath = "/Users/hunghoang/Desktop/my_document.txt";
FILE* file;
file = fopen(filePath, "w");
if(!file)
printf("Can not open this file\n");
else
printf("File is opened\n");
writeToFile(file);
fclose(file);
return 0;
}
void writeToFile(FILE* file)
{
int c = 0;
while (c<4){
fprintf(file, msg[c]); // tuong tu printf
c++;
}
}
Mình có chương trình như trên, mong muốn ghi đoạn text vào một file đang tồn tại. Mình đang thắc mắc rằng ở phần khai báo biến msg thì phải dùng con trỏ thay vì khai báo msg như một mảng thông thường. Tại sao lại dùng như vậy ?
Xin cảm ơn mọi người.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?