cuốn sách gpt4 ai đã làm

提示 FILE * 未初始化

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 00:32:21 28 4
mua khóa gpt4 Nike

void openUpNow(FILE *x, FILE *y)
{
x = fopen("xwhatever", "r");
y = fopen("y sao cũng được", "r");
}

int _tmain(int argc, _TCHAR* argv[ ])
{
TẬP TIN *x, *y;

openUpNow(x, y);
}

cảnh báo C4700: Biến cục bộ chưa được khởi tạo 'x' được sử dụng

cảnh báo C4700: Biến cục bộ chưa được khởi tạo 'y' được sử dụng

Biện pháp khắc phục?

câu trả lời hay nhất

Dù sao đi nữa, tôi không nghĩ đó là điều bạn muốn làm.

Giả sử bạn ước openUpNow() Mở tập tin để xy , bạn nên sử dụng:

void openUpNow(FILE **x, FILE **y)
{
*x = fopen("xwhatever", "r");
*y = fopen("y sao cũng được", "r");
}

int _tmain(int argc, _TCHAR* argv[ ])
{
TẬP TIN *x, *y;

openUpNow(&x, &y);

// làm việc gì đó


}

Nói cách khác, bạn cần chuyển đổi con trỏxy Địa chỉ được truyền cho hàm.

Như mã của bạn bây giờ gọi openUpNow() Không làm gì cả (và làm rò rỉ phần xử lý tệp) vì con trỏ được truyền theo giá trị.

Về lời nhắc FILE * chưa được khởi tạo, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/8875274/

28 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress