const使用正确的两项 Ainta=3; const intp = &a;Bint a= 3; const int const p = &a; ++p = 4;Cconst int a=3; const int p = &a;Dconst int a=3; int p = &a;正确的是为什么
C和D是正确的。
C是正确的,因为a被声明为const int,意味着a的值不能被修改。p被声明为指向const int的指针,意味着p不能通过解引用来修改a的值。
D是正确的,因为a被声明为const int,意味着a的值不能被修改。p被声明为指向int的指针,可以通过解引用来修改a的值。虽然这样的声明违反了const的规定,但编译器无法在编译时检测到这个错误。
原文地址: https://www.cveoy.top/t/topic/iBDB 著作权归作者所有。请勿转载和采集!