代码main.c:
#include <stdio.h>
#include <assert.h>
void display(void);
int main(int argc, char *argv[])
{
int i;
char *str[] = { "xiong", "feng", "cong", "bear" };
assert(argv[1]!=NULL); //断言,判断函数里面的条件是否成立,成立则执行,不成立则忽略退出
for (i = 0; i < 4; i++) {
printf("第 %d 个字符串是:%s\n", i + 1, str[i]);
printf("第 %d 个字符串首地址是:%d\n", i + 1,
(int) &*str[i]);
printf("第 %d 个字符串第 %d 个元素是:%c\n", i + 1,
i + 1, str[i][i]);
printf("第 %d 个字符串第 %d 个元素地址是:%d\n",
i + 1, i + 1, (int) &str[i][i]);
}
display();
printf("argv[1] = %s\n",argv[1]);
return 0;
}
void display(void)
{
char *str[]={"xiong","feng","love","zheng","ling"};
int i;
for(i=0;i<5;i++)
{
printf("str[%d] = %s\n",i,str[i]);
}
}
gcc main.c -Wall 后运行 ./a.out abcdef 结果为:
/****************************************************/
gdlc@Bear:/media/sda7/my_c_script$ ./a.out abcdef
第 1 个字符串是:xiong
第 1 个字符串首地址是:134514209
第 1 个字符串第 1 个元素是:x
第 1 个字符串第 1 个元素地址是:134514209
第 2 个字符串是:feng
第 2 个字符串首地址是:134514215
第 2 个字符串第 2 个元素是:e
第 2 个字符串第 2 个元素地址是:134514216
第 3 个字符串是:cong
第 3 个字符串首地址是:134514220
第 3 个字符串第 3 个元素是:n
第 3 个字符串第 3 个元素地址是:134514222
第 4 个字符串是:bear
第 4 个字符串首地址是:134514225
第 4 个字符串第 4 个元素是:r
第 4 个字符串第 4 个元素地址是:134514228
str[0] = xiong
str[1] = feng
str[2] = love
str[3] = zheng
str[4] = ling
argv[1] = abcdef
/****************************************************/
--
/**************************************/
Name: Xiong Feng
E-mail:linux0818@gmail.com
MSN:linux0818@hotmail.com
QQ:23562033
Address: GuangZhou.China
/**************************************/
没有评论:
发表评论