C语言中的指针之数组和字符串
2011-12-23 08:55
267 查看
C语言最大的特色便是指针的引用。很遗憾,指针一直是我的弱点。如果这么算起来的话,那么我应该算是不懂C语言的人。
工作这么多年,说起这个还是很惭愧的。
C语言中的指针引用,最让人疑惑(或者是我最疑惑)便是字符串与数组指针的引用。
定一个字符串:char *ptr = "I am shamed".这种做法是正确的。
因为字符串"I am shamed"把头指针给了ptr,这到是无可厚非。
而让人疑惑的便是%s的打印,只要给头指针便能打全。真是神奇。
再说一例:
调用时只要使用open_proc_file("/tmp/tmp.txt)即可。实际便是字符串指针的传递。即在实参中把/tmp/tmp.txt的指针给形参filename.最终到fopen时,仍然是字符串的头指针。
而fopen的第一个参数,要的便是字符串的头指针。
真是神奇的C语言呀。
而对于数组,只要记住一条,那便是定义一个数组buf[20],而buf就是指数组的头指针。
工作这么多年,说起这个还是很惭愧的。
C语言中的指针引用,最让人疑惑(或者是我最疑惑)便是字符串与数组指针的引用。
定一个字符串:char *ptr = "I am shamed".这种做法是正确的。
因为字符串"I am shamed"把头指针给了ptr,这到是无可厚非。
而让人疑惑的便是%s的打印,只要给头指针便能打全。真是神奇。
再说一例:
int open_proc_file(char *filename) { FILE fd; fd = fopen(filename, "r"); fclose(fd); return 0; }
调用时只要使用open_proc_file("/tmp/tmp.txt)即可。实际便是字符串指针的传递。即在实参中把/tmp/tmp.txt的指针给形参filename.最终到fopen时,仍然是字符串的头指针。
而fopen的第一个参数,要的便是字符串的头指针。
真是神奇的C语言呀。
而对于数组,只要记住一条,那便是定义一个数组buf[20],而buf就是指数组的头指针。
相关文章推荐
- C语言学习之 数组,指针,字符串. (二)
- C语言字符串数组与字符串指针详解
- Swift中对C语言接口缓存的使用以及数组、字符串转为指针类型的方法
- 第7周 C语言及程序设计提高例程-28 字符串、字符数组、字符指针
- 【C语言】用指针数组完成:将若干字符串安字母顺序输出
- C语言中字符数组和字符串指针分析(转载)
- c语言字符串与数组还有指针的总结(1)
- C语言中 字符、数组、字符串、指针——学习IOS你必须了解
- 浅谈C语言中变量、常量、数组、字符串、指针的地址
- C语言中字符数组和字符串指针分析
- C语言 第 7 节 如何将字符串指针指向的内容赋值给数组
- ios开发-c语言之指针和数组以及指针和字符串的学习
- C语言中字符数组和字符串指针分析
- C语言----变量及作用域 、 指针 、 指针和数组 、 进程空间 、 字符串
- 黑马程序员————C语言基本语法(数组、字符串、指针、其他数据类型)
- 关于c语言中的字符数组和字符串指针
- C语言字符串指针变量与字符数组的区别
- C语言中指针,数组,字符串及函数
- C语言 字符数组和字符串指针的理解
- c语言字符指针数组经典,此后不必再担心字符串问题.