#include<stdio.h>
int main()
{
char* h="IloveChina";
h[1]=0;
printf("%s",h);
return 0;
}
这里h[1]为什么不能赋值为0
因为 h 指向的是一个 字符串常量, 它的数据是不允许修改的
不知道你这个问题是否已经解决, 如果还没有解决的话:A:不会发生这样的问题。在轮转调度算法下。L迟早会运行,最终它将会离开临界区。关键是,在优先级调度算法下,L永远不会运行;在轮转循环下,它定期得到一个正常的时间片,所以有机会离开其临界区。
首先,我们需要看一下具体的代码或上下文来了解为什么无法将h[1]赋值为0。没有提供具体的代码和上下文,无法进行详细的分析,但可以提供一些常见的可能原因和解决方案。
变量h[1]可能是一个常量或只读变量,这样就无法对其进行赋值。解决方案是修改变量为可写的,或者使用其他变量来存储值。
h[1]在赋值之前可能没有被正确初始化。解决方案是在赋值之前确保h[1]有一个合适的初始值,或者在适当的地方初始化h[1]。
可能存在其他代码或条件限制了对h[1]的赋值操作。解决方案是检查代码中是否有其他相关的语句或条件,并确保它们不会影响到对h[1]的赋值。
h[1]的类型可能不允许赋值为0。例如,如果h[1]是一个字符串或其他不支持赋值为0的类型,就会出现问题。解决方案是使用合适的类型来存储值,或者使用类型转换将0转换为适当的类型。
如果你能提供具体的代码或上下文,我可以更具体地分析问题并给出更准确的解决方案。