Compiler Error C3872
'char': this character is not allowed in an identifier
The C++ compiler follows the C++11 standard on characters allowed in an identifier. Only certain ranges of characters and universal character names are allowed in an identifier. Additional restrictions apply to the initial character of an identifier. For more information and a list of allowed characters and universal character name ranges, see Identifiers.
The range of characters allowed in an identifier is less restrictive when compiling C++/CLI code. Identifiers in code compiled by using /clr should follow Standard ECMA-335: Common Language Infrastructure (CLI).
The following sample generates C3872:
// C3872.cpp
int main() {
int abc_\u0040; // C3872, U+0040 is in base char set
int abc_\u3001; // C3872, U+3001 is not in allowed range
int \u30A2_abc_\u3042; // OK, UCNs in allowed range
}
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for