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

C. Tại sao tôi không thể khai báo và khởi tạo một con trỏ?

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 06:17:35 hai mươi bốn 4
mua khóa gpt4 Nike

Được rồi, tôi có đoạn mã sau:

int main(int argc, char **argv, char **envp)
{
const char *usuario= NULL;
trong khi(*envp)
{
char *str = *envp++;
//if(strcmp(str,"USERNAME")==0)
if(str[0] == 'U' && str[1] == 'S' && str[2]=='E' && str[3]=='R' && str[4] == 'N ')
{
usuario = str;
phá vỡ;
}
}
if(usuario != NULL)
{
printf("Xin chào, bienvenido al chương trình %s",usuario);
}
return 0;
}

Câu hỏi của tôi là tại sao tôi không thể khai báo một biến bên ngoài và khởi tạo nó bên trong?

char *str;
const char *usuario= NULL;
trong khi(*envp)
{
*str = *envp++;
nếu(`...

Trình biên dịch nói:Cảnh báo: phép gán tạo ra số nguyên từ con trỏ mà không truyền

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

cảnh báo: phép gán tạo số nguyên từ con trỏ mà không cần ép kiểu

Vấn đề là bạn không gán cho con trỏ của mình, bạn đang gán cho giá trị được con trỏ trỏ tới:

*str = *envp++;

str trước * Làm cho con trỏ bị hủy đăng ký. Thay vào đó, bạn có thể muốn:

str = *envp++;

Về C, tại sao tôi không thể khai báo con trỏ và khởi tạo nó? , 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/42056808/

hai mươi bốn 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