努力思考 + 实践, 眼高手低是不行的. 注册 | 登陆

C语言中字符数组的赋值

char *p = "abcd"

"abcd"是在进程运行的内存中存储的,语句执行时,动态分配了内存空间(4字节,根据系统的寻址位数来确定)给变量p使用,并将"abcd"所在的内存地址值放到p的内存中

char p = 'a'

也是类似的过程不过p分配的是一个byte的空间,并被赋于了'a'的asc码值(56?)

char p[20] = "abc"

试图将一个地址值放入在p=p[0]的byte空间内..结果当然不行

char p[20]={'a','b','c'}


这个应该是ok的

Tags: c

« 上一篇 | 下一篇 »

Trackbacks

点击获得Trackback地址,Encode: UTF-8

本文因为某种原因此时不允许访客进行评论