A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zll464928406 中级黑马   /  2015-12-29 09:19  /  801 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. #import <Foundation/Foundation.h>
  2. @interface Paixu:NSObject
  3. {
  4.         @public
  5.         int _ch[5];
  6. }
  7. -(void)sheng;
  8. -(void)jiang;
  9. @end

  10. @implementation Paixu
  11. -(void)sheng{
  12.         for (int i=0; i<4; i++) {
  13.                 for (int j=0; j<4-i; j++) {
  14.                         if (_ch[j]>_ch[j+1]) {
  15.                                 int temp=0;
  16.                                 temp=_ch[j];
  17.                                 _ch[j]=_ch[j+1];
  18.                                 _ch[j+1]=temp;
  19.                         }
  20.                 }
  21.                
  22.         }
  23.         for (int i=0; i<5; i++) {
  24.                 NSLog(@"%d",_ch[i]);
  25.         }
  26. }
  27. -(void)jiang{

  28. }
  29. @end

  30. int main(int argc, const char * argv[]) {
  31.         @autoreleasepool {
  32.                 Paixu *p = [Paixu new];
  33.                 p->_ch[0]=1;
  34.                 p->_ch[1]=3;
  35.                 p->_ch[2]=4;
  36.                 p->_ch[3]=5;
  37.                 p->_ch[4]=2;
  38.                 [p sheng];
  39.         }
  40.     return 0;
  41. }
复制代码

本人新手,为什么main函数中P的数组不能像C一样初始化呢,就像这样p->_ch={1,2,3,4,5},这样写的话就报错,原因在哪呢,求大神解答

3 个回复

倒序浏览
没有啥原因,因为数组不能一下子全部初始化,只能一个个的赋值,这是数组赋值的规定,全部初始化是错误的,就没有这个方法
回复 使用道具 举报
一步步往上爬 发表于 2016-1-5 11:56
没有啥原因,因为数组不能一下子全部初始化,只能一个个的赋值,这是数组赋值的规定,全部初始化是错误的, ...

好吧,谢谢了
回复 使用道具 举报
学习了........
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马