c语言字符串可以重新赋值吗,C语言中字符串赋值

发布时间:2022-11-22

本文目录一览:

1、c语言字符串赋值
2、C语言中怎么字符串赋值?
3、怎么进行字符串赋值?C语言
4、C语言字符串赋值
5、C字符串赋值

c语言字符串赋值

string[500]="abcdefg";

是将字符串"abcdef"赋值给字符数组中string[500]这个元素,先不说string[500]已经越界了。 单单是string[500]只能存放一个字符,但你这里却要将一串字符串赋值给他,当然会错误。像你说的在定义时初始化是对的。如果定义后要进行赋值,就用string.h中的strcpy()函数,将"abcdefg"复制到字符串string中。 代码如下:

#include <stdio.h>
#include <string.h>
int main()
{
    char string[500];
    // string[500] = "abcdefg";
    strcpy(string, "abcdefg"); // 将字符串常量赋值给字符数组
    return 0;
}

C语言中怎么字符串赋值?

需要准备的材料分别有:电脑、C语言编译器。 1、首先,打开C语言编译器,新建一个初始 .cpp 文件,例如:test.cpp。 2、在 test.cpp 文件中,输入C语言代码:

char a[20];
strcpy(a, "hello");
printf("%s", a);

3、编译器运行 test.cpp 文件,此时成功将字符串赋值给了字符串 a 并打印。

怎么进行字符串赋值?C语言

在C语言中,字符串的赋值主要有两种方法,第一种是通过指针的方式直接赋值,第二种是通过数组直接赋值。 1、指针式赋值。 通过程序的运行情况,可以知道:char *p = "hello"; 这种字符串的赋值方式是完全没有问题的。要理解这种赋值方式,首先得理解双引号在这个语句中做了什么工作。双引号主要做了3个工作,分别是: (1)申请了空间(在常量区),存放了字符串。
(2)在字符串尾加上了 \0
(3)返回地址。 这里所返回的地址就赋值给了 char * 类型的指针变量 p。 2、通过字符数组直接把字符串赋值。程序如下:

扩展资料:

字符串赋值需要注意的一些问题: 直接把字符串赋值给数组名(也就是数组首元素的首地址)是不行的。 会出现以下错误:

参考资料:

百度百科--字符串赋值

C语言字符串赋值

字符串指针只可以在定义的时候可以直接赋值,在定义之后要赋值可以用 strcpy()memcpy()sprintf() 之类的函数,在这里你可以这样写:memcpy(b, "AT+PH", 6);

C字符串赋值

字符串不能这样赋值。 *str 其实和 str[0] 是等效的。 另外 str 是数组,所以这个指针是常量,所以也不能使用类似 str="asdf"; 的方式进行赋值。 你可以用 string.h 中的 strcpy() 函数,该函数会自动添加 \0

#include <stdio.h>
int main()
{
    char str[40];
    strcpy(str, "aldkjflakdsjfalkfj");
    puts(str);
}