黑马程序员技术交流社区
标题:
一个关于数组的问题
[打印本页]
作者:
xiaodixing
时间:
2014-5-29 00:30
标题:
一个关于数组的问题
本帖最后由 xiaodixing 于 2014-5-29 21:41 编辑
本帖最后由 z82454642 于 2014-3-11 23:34 编辑
有一个字符串数组
str
表示第i+1个字符串
str
[j] 表示第i+1个字符串的第j+1个字符
str
+j 表示什么意思呢
是表示str[i+j]么?
作者:
夏沫的黄昏′
时间:
2014-5-29 13:23
通过 下面这段代码给你讲讲指针吧
char a[10][10]={"12","34","56","78"};
char *str = *(a+1);
puts(str);
//输出34
*str = *(a+1) 意思就是 str指向了 a+1 的地址
strcpy(str,a[1]); 可以这样理解 但实际上是指针的变化
所以str输出的是a[1];
str = str + 1;
puts(str);
//输出4
str = str+1 代表的是
str指向的是这个字符串的首地址 也就是3的地址
str+1 就是 指针指向了3的下一个位置 也就是4
。。。
指针难以清晰的讲述
只能说到这里了
觉得有用的话就给点分
作者:
a1130003724
时间:
2014-5-29 15:27
学习学习
作者:
mingjixiaohui
时间:
2014-5-29 17:53
for(i=0;i<=100-1;i++) //100个数进行循环,其中i表示“第几个”
a[j]=a[i] //将第i个元素赋值给a[j]保持
printf("第%d个的元素是:%d",i,a[j]);
按你说的str+j 能加吗?i表示“第几个”,j也是个存数的变量,不能加的。
望指教
作者:
但愿''专注..
时间:
2014-5-30 21:59
str表示i+1+j个字符串?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2