如何将一个字符串常量赋值给一个STRING变量?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将一个字符串常量赋值给一个STRING变量?相关的知识,希望对你有一定的参考价值。

注意,不是初始化,比如将“ABC”赋值给string对象text1
还有就是,可以直接将一个二进制串赋值给STRING对象吗?

直接用=赋值就可以了。举例如下:

//#include "stdafx.h"//If the vc++6.0, with this line.
#include <string>
#include <iostream>
using namespace std;
int main(void)
    string s;
    s="ABC";
    cout << s << endl;
    s="1011001";
    cout << s << endl;
    return 0;

参考技术A 可以直接赋值吧。二进制串也是字符串,都可以直接用的。而且C++的string对象很强大的。本回答被提问者采纳 参考技术B string text1;
text1 = "abc";

int *p = new int[n];
string str( (char*)p, sizeof(int)*n );
看你怎么解析了。
参考技术C string str;
str.Format(_T("ABC"));
参考技术D string str = "your string"; //c#
String str = "your string"; //Java

为啥不能用赋值语句将一个字符串常量直接赋给一个字符数组

因为字符数组是一个特殊的固定地址,是一个常量指针,所以不能对它赋值 参考技术A 不能直接赋值,这是一定的,因为有太多的不确定性,容易发生错误
赋值可以使用strcpy函数,strncpy函数,或者sprintf函数都行,直接等于是不行的~~~~
参考技术B 规定不能整体引用,只能单个引用
赋值除了按字符串输入赋给字符数组,或者初始化为字符串外,一般只能单个元素赋值
数组名是一个地址常量,不允许改变,但是数组中的元素是变量,可以改变赋值(数组名这个地址[常量]就是元素[变量]的存放位置)
a[]是一个常量,但是a[0]是一个变量

以上是关于如何将一个字符串常量赋值给一个STRING变量?的主要内容,如果未能解决你的问题,请参考以下文章

String使用字面值常量赋值与new String()赋值的区别

将字符常量'a'赋值给字符变量ch的赋值表达式都有哪些写法?_

Java final常量赋值

C语言 变量 被赋值后如何转化成 常量???

如何将String类的字符串 赋值给Char数组

如何将String类的字符串 赋值给Char数组