2015-10-13 66 views
1

我试图在由char *表示的句子中将大写更改为小写。 我得到一个错误:当我使指针解引用时出现访问冲突。字符指针取消引用

// Uppercase to lowercase 
char *str = "My sentence"; 
*str = 'm'; 

回答

0

原因是您使用了错误的格式来定义字符串。你想:

char str[] = "My Sentence"; 
*str = 'm'; 

什么你写定义了一个指针,然后“我句”分配给指针的内存地址。您正在收到访问冲突,因为您没有在“My Sente”拥有内存,而这很可能是被引用的地址。