char *strList[3]={"abc","hello","love"}; 如果字符串中包含引号则需要使用转义符 \ 如在hello的前后加上引号的格式 为 /"hello/"与字符串格式 %s
读取文件中字符串,输出字符长度的实例
本例中,学习到如何读取txt文件中的类容。首先用fopen函数打开文件,并读取文件内容。第一个参数为文件路径,第二个参数 r 表示只读方式打开。然后存到file中。
接着用fgets函数读取file中的一行文本,fgets(strWorld,100,file)
其中需要注意的一个地方是因为读取的是txt文本文件,因此如果直接用strlen返回的长度会比实际多一位,因此需在字符串末尾加 ‘\0’
当读取完毕之后关闭 fclose(file);
在这里我被这小小的 * 号给弄迷糊了,不知道为什么定义的时候有的时候要加上*号,有的定义又不加,如例子中 file的时候需要加,int,char 的时候就不加。后来论坛中的朋友提供了如下解释:
int char 是基本类型的变量 不需要指针来管理
FILE NSString 等类型都属于引用类型 也就是对象 需要用*来修饰和调用
感觉还是有些似懂非懂,先记下来在实际使用中取体会吧。如果有朋友看到我的学习笔记,希望能抽出时间来给我指点一二,不甚感激。
第三个例子:
可以看出,这个例子是第二个例子的加强版
,不过同样的有几个地方不是很明白。
if(argc==1)这一句是什么意思,为什么是这样判断。在这里我已经找到答案了,所以在此更新一下。网上查到的都比较简洁,都只是提到了,argc代表启动参数等等。在这里详细说下。argc参数保存的是启动参数的个数。因为默认程序名会用作启动参数传递,所以argc>=1 ,如果用户不提供文件路径,那么argc的值为1,如代码中所示,将不会读取文件,并弹出提示信息。下面加上在xcode中如何提供启动参数的方法。(此处与书中所写的方法不一样,我用它上面写的方法找不到指定的文件,开始认为是路径中存在中文的原因,后来将中文字符全都去掉。然后又几番修改,将我的实际解决方法贴出来)
添加完成之后,就会和之前的例子得到一样的结果了。