C++ 指向C+中具有未定义访问权限的类型的指针+;?
C++有三种类型的o字符:C++ 指向C+中具有未定义访问权限的类型的指针+;?,c++,pointers,C++,Pointers,C++有三种类型的o字符: 有符号字符-有符号字符 无符号字符-无符号字符 char-未定义其是有符号还是无符号的字符 “类比”,C++还有3种指针类型吗?p> const int*-指向常量的指针int int*-指向可变int ??-指向int的指针,该指针未定义其常量或变量 在C++中,使用什么代替?? > C++ >不支持“程序后面定义的这种类型的精确类型”;有些类型是最好的——“实现依赖于系统” 所以C++中没有这个等价物。指针是常量或非常量 字符不是“未定义其有符号或无符号
-有符号字符有符号字符
-无符号字符无符号字符
-未定义其是有符号还是无符号的字符char
“类比”,C++还有3种指针类型吗?p>
-指向常量的指针const int*
int
-指向可变int*
int
-指向??
的指针,该指针未定义其常量或变量int
字符不是“未定义其有符号或无符号的字符”;C++标准——“字符表示类型”,它可以在目标系统上最有效地处理(与符号char或unchar字符具有相同的表示和对齐,但始终是一种不同类型)。所以char始终是未定义的类型之一 您错误地认为
const int*
必然是指向const int
的指针。例如:
int a; // Not const;
int const* p = &a; // Valid
因此,
int const volatile*
就是答案。它可以指向任何符合条件的cvint
,没有类比。但是有一个volatile
和mutable
限定符。还要注意的是,char
只有在实现可以使其有符号或无符号时才是未定义的。但是,C++中的“访问”指的是