K&R的名著:<C程序设计语言>小程序总结6
2012-10-13 16:39
267 查看
1、指向数组的指针与指针数组
int (*p)[10];
// 指向数组的指针:p是一个指针,p指向一个由10个元素组成的数组
int *p[10]
// p先与[]结合,表示p是个数组,这个数组的每一个元素都是int*的指针。
2、NULL与0 、\0 的区别
NULL和0的值都是一样的,但是为了目的和用途及容易识别的原因,NULL用于指针和对象,0用于数值对于字符串的结尾,使用'\0',它的值也是0,但是让人一看就知道这是字符串的结尾,不是指针,也不是普通的数值。
3、argv[ ]参数
传递main()函数两个参数: argc和 argv。
main(int argc, char *argv[])
argc: 整数, 为传给main()的命令行参数个数。 argv: 字符串数组。 argv[0]为空串("") ;argv[1] 为在DOS命令行中执行程序名后的第一个字符串;argv[2] 为执行程序名后的第二个字符串;
*++argv是一个指向参数字符串的指针;
(*++argv)[0]是它的第一个字符;而*++argv[0]表示指向一个特定字符串的某个字符
4、*p++与*++p
*p++; //因为++与*的优先级相同,遵循右结合方式,即*(p++),但返回值认识*p;
*++p; //*(++p) 很明显
int (*p)[10];
// 指向数组的指针:p是一个指针,p指向一个由10个元素组成的数组
int *p[10]
// p先与[]结合,表示p是个数组,这个数组的每一个元素都是int*的指针。
#include<stdio.h> #include<string.h> void main(void) { void sort(char (*p)[6]); int i; char str[10][6]; char (*p)[6]; printf("input 10 strings:\n"); for (i = 0; i < 10; ++i) scanf("%s",str[i]); p = str; sort(p); printf("Now, the sequence is :\n"); for (i = 0; i < 10; ++i) printf("%s\n",str[i]); } void sort(char (*s)[6]) { int i, j; char temp[6],*t=temp; for (i = 0; i < 9; i++) for (j = 0; j < 9 - i; ++j) if (strcmp(s[j],s[j+1]) > 0) { strcpy(t,s[j]); strcpy(s[j],s[j+1]); strcpy(s[j+1],t); } }
2、NULL与0 、\0 的区别
NULL和0的值都是一样的,但是为了目的和用途及容易识别的原因,NULL用于指针和对象,0用于数值对于字符串的结尾,使用'\0',它的值也是0,但是让人一看就知道这是字符串的结尾,不是指针,也不是普通的数值。
3、argv[ ]参数
传递main()函数两个参数: argc和 argv。
main(int argc, char *argv[])
argc: 整数, 为传给main()的命令行参数个数。 argv: 字符串数组。 argv[0]为空串("") ;argv[1] 为在DOS命令行中执行程序名后的第一个字符串;argv[2] 为执行程序名后的第二个字符串;
*++argv是一个指向参数字符串的指针;
(*++argv)[0]是它的第一个字符;而*++argv[0]表示指向一个特定字符串的某个字符
4、*p++与*++p
*p++; //因为++与*的优先级相同,遵循右结合方式,即*(p++),但返回值认识*p;
*++p; //*(++p) 很明显
相关文章推荐
- K&R的名著:<C程序设计语言>小程序总结1
- K&R的名著:<C程序设计语言>小程序总结5
- K&R的名著:<C程序设计语言>小程序总结2
- K&R的名著:<C程序设计语言>小程序总结7指针
- K&R的名著:<C程序设计语言>小程序总结p117统计关键字
- K&R的名著:<C程序设计语言>小程序总结3
- K&R的名著:<C程序设计语言>小程序总结4
- K&R的名著:<C程序设计语言>小程序总结8结构体
- K&R名著<C程序设计语言>p103函数指针:串联以前小程序
- K&R的名著:<C程序设计语言>自引用结构
- <<c程序设计语言>>-4- 函数与程序结构
- <<c程序设计语言>>第三章 程序控制流
- 某程序设计语言中的pair是如下方式定义:type:=int|pair<type,type>.
- Java总结<三>多线程
- <C++Primer>第四版 阅读笔记 第一部分 “基本语言”
- <iOS>iphone技术总结,整合一下
- 十一月<学习总结>
- 在Matlab中调用C/C++程序<二>
- JPA开发总结<一>
- MFC 知识总结<2>MFC CView