关于object-C的简单问题
关于object-C的简单问题const char *word[4]={"aaa","sssdd","sssss","sss111"}这个是char数组吗还有一个 char word[100];while(fgets(word,100,wordFile)){word[strlen(word)-1]='\0'}这两个有什么区别吗,还有关于fgets()希望能顺便讲一下,里面3个参数的含义
最佳回答
const char *word[4]={"aaa","sssdd","sssss","sss111"}这个是char数组吗?是一个字符类型的指针数组,高级语言里又叫String 数组,word 是这个指针数组的首地址变量,也叫做指针的指针。其实可以这样理"aaa" 字符串在内存里被分配3字节的空间块,那么 word[0] 里记录的是这个空间块的地址 ,所以 word[0] 是一个地址变量,也就是常讲的指针。但前面已经写了一个 const 所以,这不能再改变,不能再获取其他字符串内存块的地址,永远只能属于"aaa",也就不是变量,而是常量。同理 word[1] -> "sssdd" 。fgets( 从字符串数组读取一行字符 ,缓存大小 ,指向一个打开的文件对象 )意思 是把文件的一行读入 word[100] 内 当然,可能文件中,一行远超过100个字节但第二个参数已经限定,如果超出100字节就不读了,保证word[100]能容纳不内存溢出。如果fgets( ,,) 函数在读取过程中,发生以下三种情况时,读取停止:1。发现换行符2。发现文件终结符EOF3。发生错误而这个函数在什么情况下会返回NULL呢,就是上述的第2和第3种情况发生时,会返回NULL,此时循环退出。当然,如果你是学习Object-C iPhone编程的,你可以使用乔帮主的NS系列变量NSString * word[4]={ "aaa","sssdd","sssss","sss111" }因为Object-C 所有变量都是以指针的形式定义,所以,你要对指针概念理解非常透彻才行哦
最新回答共有2条回答
-
2026-04-08 05:18:28粗犷的电脑
回复const char *word[4]={"aaa","sssdd","sssss","sss111"}这个是char数组吗?是一个字符类型的指针数组,高级语言里又叫String 数组,word 是这个指针数组的首地址变量,也叫做指针的指针。其实可以这样理"aaa" 字符串在内存里被分配3字节的空间块,那么 word[0] 里记录的是这个空间块的地址 ,所以 word[0] 是一个地址变量,也就是常讲的指针。但前面已经写了一个 const 所以,这不能再改变,不能再获取其他字符串内存块的地址,永远只能属于"aaa",也就不是变量,而是常量。同理 word[1] -> "sssdd" 。fgets( 从字符串数组读取一行字符 ,缓存大小 ,指向一个打开的文件对象 )意思 是把文件的一行读入 word[100] 内 当然,可能文件中,一行远超过100个字节但第二个参数已经限定,如果超出100字节就不读了,保证word[100]能容纳不内存溢出。如果fgets( ,,) 函数在读取过程中,发生以下三种情况时,读取停止:1。发现换行符2。发现文件终结符EOF3。发生错误而这个函数在什么情况下会返回NULL呢,就是上述的第2和第3种情况发生时,会返回NULL,此时循环退出。当然,如果你是学习Object-C iPhone编程的,你可以使用乔帮主的NS系列变量NSString * word[4]={ "aaa","sssdd","sssss","sss111" }因为Object-C 所有变量都是以指针的形式定义,所以,你要对指针概念理解非常透彻才行哦
热门文章
- 康达学院专转本五年制
- 高考一个考场分ab卷吗
- not only but also用法
- 某物体做自由落体运动,从释放开始计时,则物体在前2s内的平均速度为______m/s,物体下落2m时的速度大小为______m/s.
- 三角函数公式大全表格
- 地理中考必背知识点2022
- 2013-2014学年小学六年级科学上学期期末考试试卷及答案
- 人教版2014-2015学年小学五年级英语第二学期期中教学质量检测试卷及答案
- 【Linux驱动开发】设备树详解(二)设备树语法详解
- 别跟客户扯细节
- 在别的城市买房子能落户吗
- 卖房前要把装修贷还完吗
- 高中政治教学提高教学效果的方法探究
- “互联网+”背景下的初中英语课堂教学改革与创新策略研究
- 2022年终止合同范本
- 租房合同范本范文
- 如何挑选土豆
- 如何挑选土鸡
