2014-04-10 13 views
6

Trong phần 6.4.1 của tiêu chuẩn C11 dấu hoa thị xuất hiện trong danh sách các từ khóa:Là `*` (dấu sao) một từ khóa trong C11?

keyword: one of 
    auto  ∗ if  unsigned 
    break  inline void 
    ... 

Điều này chỉ ra rằng * là một từ khóa?

Nếu không, việc sử dụng nó ở đây sẽ chỉ ra điều gì?

+4

Đây không phải là từ khóa, mà là toán tử quá tải. –

+2

@leeduhem Câu hỏi đề cập đến đặc điểm kỹ thuật C 11, không phải đặc tả C++ 11. –

+1

@JefferyThomas Trong C, '*' cũng có một số hàm, nói cách khác, nó là một toán tử được tái định sẵn. –

Trả lời

8

Đó là một dấu khác.

Trong trừu tượng (p.1) của N1570:

Thay đổi từ dự thảo trước đó (N1539) được thể hiện bằng '' dấu diff '' ở bên phải margin: xóa văn bản được đánh dấu bằng ' '∗' ', văn bản mới hoặc đã thay đổi bằng' '' '.

Trong dự thảo N1539, alignof là một từ khóa, xuất hiện trên hàng đầu tiên của bảng:

N1750 giảm alignof và thay thế nó bằng _Alignof.

Vị trí của "*" có vẻ hơi lạ, nhưng chắc chắn không liên quan đến toán tử *.

+0

Tại sao nó xuất hiện bên cạnh 'if'? – Thanatos

+0

@Thanatos: Tôi đã cập nhật câu trả lời để giải quyết vấn đề đó. –

+0

@KeithThompson Cảm ơn bạn đã cải thiện. –

Các vấn đề liên quan