13.3.4 使用 char* 提取器
使用该预定义提取器时,请务必小心,它可能会导致问题。请按如下方式使用该提取器:
char x[50];
cin >> x;
该提取器跳过前导空白,提取字符并将其复制到 x 中,直至遇到另一个空白字符。然后,它使用终止空 (0) 字符完成字符串。请谨慎使用该提取器,因为输入可能会溢出给定的数组。
您还必须确保指针指向了分配的存储。以下示例显示了一个常见错误:
char * p; // not initialized
cin >> p;
由于将存储输入数据的位置不确定,因此您的程序可能会中止。