码迷,mamicode.com
首页 > 编程语言 > 详细

C语言 知识点

时间:2014-06-15 00:14:03      阅读:320      评论:0      收藏:0      [点我收藏+]

标签:class   code   string   line      table   

1:多维数组参数

1
2
3
4
5
实参                                所匹配的形式参数
数组的数组      char c[8][10];      char(*c)[10];    数组指针
指针数组        char *c[15];        char **c;       指针的指针
数组指针        char (*c)[64];      char (*c)[64];  不改变
指针的指针      char **c;           char **c;       不改变

你之所以能在main()函数中看到char **argv这样的参数,是因为argv是个指针数组(char *argv[])。这个表达式被编译器改写为指向数组第一个元素的指针,也就是一个指向指针的指针。如果argv参数事实上被声明为一个数组的数组(也就是char argv[10][15]),它将被编译器改写为char(*argv)[15](也就是一个字符数组指针),而不是char **argv.

 

2.char值范围(-128 ~ 127)

#include <string.h>
#include <stdio.h>

int main(void)
{
char *p = "012345";
char array[10] = {"56789"};
char i = 0x80;
int j = 0;
j=i;

printf("i is length = %d\n", i);
printf("i is length0 = 0x%x\n", i);
printf("j is length = %d\n", j);
printf("j is length0 = 0x%x\n", j);
printf("p is length = %d\n", sizeof(p));
printf("array is length = %d\n", sizeof(array));
}

输出:

i is length = -128                                                                                                      i is length0 = 0xffffff80                                                                                               j is length = -128                                                                                                      j is length0 = 0xffffff80                                                                                               p is length = 4                                                                                                         array is length = 10  

C语言 知识点,布布扣,bubuko.com

C语言 知识点

标签:class   code   string   line      table   

原文地址:http://www.cnblogs.com/heyp/p/3786063.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!