【发布时间】:2011-02-28 22:20:55
【问题描述】:
我有以下代码在我初始化 ch 的行崩溃:
char * p = "Test";
char ch = *p++;
printf("Here : %s\n%c", p, ch);
但是下面的代码没有问题:
char * p = "Test";
char ch = *p++;
ch++;
printf("Here : %s\n%c", p, ch);
【问题讨论】:
-
char p_data[] = "Test", *p = p_data;为您提供您自己的字符串数据副本,允许您对其进行修改。 -
也许第一段第2行的编辑应该颠倒过来。它使阅读这个问题感到困惑。对于其他人来说,第一段的第二行原本是“char ch = (*p)++;”。