有关字符串和一维数组的区别。
有关字符串和一维数组的区别。我觉得这两个差不多。
举一个例子说区别: char *a= "abcdefg "; 和 char a[]= "abcdefg "; char *a= "abcdefg "; 在 常量区有一个字符串 "abcdefg " , 然后定义一个指针 a, 指针的内容为这个常量字符串的首地址。
注意,这里只是一个指针指向了 常量字符串, 所以你不能对字符串进行修改, 例如 a[i]= '? ' 这样的操作会出错, 但是你可以修改a:char b[10]= " "; a=b; //a指向数组b首地址, OK char a[]= "abcdefg "; 定义了一个数组 a , 把 字符串 "abcdefg " 【这个字符串本身在常量区】拷贝到数组中来。
这样,你可以修改 数组元素,a[i]= '? ' //OK 但是你不能修改数组名字地址: a=b //error 参考 。
你好! 字符串存储与一维数组类型不同。引用也不同。函数更不一样。 ★一维数组向函数传递的时候是首地址,也就是数组的第一个元素的地址将传递给该函数。并不是将整个数组作为实参来传递,而是用指针来代替,可作为指针理解。对于数组中元素可进行修改。
★字符的首地址需要定义指针,指向字符串的首地址,定义了指针,对于字符不能修改。 ★字符串结束有转义字符作为结尾‘/O’。sizeof实际数据类型所占用空间包括结尾/0。 ★字符串中转义字符,作为一个字符。
转义字符 序列 含义 \n 换行 \r 回车 \b 退格 \f 换页 \t 水平制表 \v 垂直制表 \\ 反斜杠 \? 问号字符 \' 单引号字符 \" 双引号字符 希望对你有帮助。
差多了 首先,类型就不一样 其次,字符串只能存储字符,一维数组的各个元素,可以有不同的类型,可以有字符串,数字,甚至还可以是数组
答:##include <stdio.h> #include <string.h> int main() { int i,j,maxlen;...详情>>