我是一名新程序员,正在学习有关指针的知识。我的代码可以完美地通过编译器,但是在实际运行时无法正常工作。
我尝试了多种方法。在此之前,我遇到了另一个有关左值的错误“左值必须作为赋值的左操作数”。然后,我查找了适当的运算符,然后停止了。
// the definition that does the work
int change( int var ) {
int *ptr;
ptr = &var;
*ptr = 3;
}
// part of main()
change( n );
我希望输出为3。但是,程序在输入后崩溃。