Tôi đang viết một chương trình C về Ký hiệu Đảo ngược Ba Lan, có các toán hạng và toán tử của nó thông qua các đối số dòng lệnh. Nhưng mọi thứ xảy ra sai khi toán tử nhân * xuất hiện, và tôi không biết tại sao.
Đây là chương trình nhỏ để gỡ lỗi.Số đối số dòng lệnh không chính xác khi chuyển `*`
test.c
int main(int argc, char **argv)
{
printf("%d\n", argc);
return 0;
}
// run case result
./test a b 3
./test * 66
Vậy tại sao các '*' lập luận làm cho một kết quả sai?
'*' có ý nghĩa đặc biệt. – Maroun
Shell mở rộng '*' cho tất cả các tệp hiển thị trong thư mục bạn chạy chương trình bạn có thể chỉ sử dụng 'x' làm toán tử nhân – hetepeperfan