相关疑难解决方法(0)

const int*,const int*const和int const*之间有什么区别?

我总是搞砸了怎么用const int*,const int * constint const *正确的.是否有一套规则来定义您能做什么和不能做什么?

我想知道在任务,传递到职能等方面所做的所有事情和所有不应做的事情.

c c++ int pointers const

1262
推荐指数
15
解决办法
47万
查看次数


常量指针有什么意义?

我不是在讨论指向const值的指针,而是指向const指针本身.

我正在学习C和C++,超越了基本的东西,直到今天我才意识到指针是通过值传递给函数的,这是有道理的.这意味着在函数内部,我可以使复制的指针指向其他值,而不会影响来自调用者的原始指针.

那么有一个函数头是什么意思:

void foo(int* const ptr);
Run Code Online (Sandbox Code Playgroud)

在这样的函数里面你不能让ptr指向别的东西因为它是const并且你不希望它被修改,但是这样的函数:

void foo(int* ptr);
Run Code Online (Sandbox Code Playgroud)

工作也一样好!因为无论如何都会复制指针,即使您修改了副本,调用者中的指针也不会受到影响.那么const的优势是什么?

c c++ pointers const

145
推荐指数
11
解决办法
3万
查看次数

const char*const与const char*?

我正在运行一些示例程序来重新熟悉C++,我遇到了以下问题.首先,这是示例代码:

void print_string(const char * the_string)
{
    cout << the_string << endl;
}

int main () {
    print_string("What's up?");
}
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,print_string的参数可能已经改为const char * const the_string.哪个更合适呢?

我理解不同之处在于,一个是指向常量字符的指针,而另一个是指向常量字符的常量指针.但为什么这两个都有效呢?什么时候相关?

c c++

101
推荐指数
5
解决办法
8万
查看次数

标签 统计

c ×4

c++ ×3

const ×3

pointers ×3

int ×1