c++ swap assign
时间: 2023-05-02 14:06:31 浏览: 85
C语言中,swap指的是两个变量之间互相交换值的过程,即将一个变量的值赋给另一个变量,同时将另一个变量的值赋给前一个变量,从而达到交换值的目的。而assign则是指对变量进行赋值,将一个值赋给另一个变量的操作。
在C语言中,swap和assign两者的区别主要在于操作的对象不同。swap是对两个变量所存储的值进行交换,而assign则是对一个变量进行赋值。
swap的过程需要通过使用中间变量来实现,其代码实现通常如下:
```
void swap(int *a, int *b){
int temp = *a;
*a = *b;
*b = temp;
}
```
而assign则是通过直接将右侧的值赋给左侧的变量来实现,其代码实现如下:
```
int a = 1;
int b = 2;
a = b;
```
以上代码中,将变量b的值赋给了变量a,这就是assign的操作。
总之,swap和assign在C语言中都是非常常见的操作,根据需要进行选择即可。
相关问题
c++ string assign
在C++中,`string`类是用来处理字符串的类。`assign()`函数是`string`类中的一个成员函数,用于将新的值赋给字符串。`assign()`函数有多个重载形式,其中一个形式是`assign(const basic_string& __str)`,它将参数中的字符串赋给当前字符串,并返回当前字符串的引用。 例如,在给定的代码示例中,`s1.assign(s6)`将`s6`的值赋给`s1`。
另外,在给定的代码示例中,还有其他字符串操作函数,比如`erase()`和`swap()`。`erase()`函数用于删除字符串的指定部分,它可以有不同的重载形式。`swap()`函数用于交换两个字符串的内容。这些函数都是用来操作`string`类的成员函数,可以方便地对字符串进行各种操作。
c++ string.assign
在C++的string库中,assign函数用于将一个字符串赋值给另一个字符串。它的定义如下:
```cpp
basic_string& assign(const basic_string& __str)
```
该函数接受一个常量引用参数__str,将__str的值赋给当前字符串,并返回当前字符串的引用。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [C++string中的assign()、erase()、swap()函数](https://download.csdn.net/download/weixin_38599231/14885010)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [c++中string的assign方法使用](https://blog.csdn.net/zqw_yaomin/article/details/81281235)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]