未被赋值的字符默认为什么赋值不了

p="abcd"; //但为什么也可以这样赋值??
一直理解不了为什么可以将字串常量赋值给字符指针变量,请各位指点!

可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

来自知道合伙人认证行家 推荐于

专业C/C++软件开发

在C语言中并没有字符串这个类型。所说的字符串就是字符数组。也就是char类型的数组。

与普通数组不同的,字符串必须以'\0'作为结束符。

而在C语言中,类型为T的一维数组,其首地址等效于该类型的一维指针,即T*型。

于是字符串,也就是字符数组,首地址就可以当做char *型使用了。

事实上,在库函数以及大多数使用到字符串作为参数的函数中,其参数都是char *型的。

本回答由电脑网络分类达人 11推荐

要理解 你要知道 字符串 干什么了 双引号 做了3件事

1.申请了空间,存放了字符串

2. 在字符串尾加上了'/0'

本回答被提问者和网友采纳

p = "abcd"; 编译器会将字符串"abcd"的地址放到指针变量p中。p存放的是它的地址,不是值。

字符串常量赋值给指针变量应该就是把它的首地址赋给指针变量吧 。

p="abcd"; //这句话的意思是把字符串的首地址赋给p!

单引号和双引号,赋值的时候这个应该有讲究吧!具体忘了,几年没去看了。

比如A1 单元格里的内容是"abcdef"字符串,偶想把这个字符串赋给strname这个变量。应该怎么写呢?

我要回帖

更多关于 未被赋值的字符默认为什么 的文章

 

随机推荐