C语言中str+3什么意思

如题所述

str+3 需要分如下2种情况进行分析:

1、当str是数值类型的时候(如int、float、double等)

str+3就表示数值的加法,如:

int str=2;
int b = str+3;  // b的值就是2+3=5


2、当str是指针或数组名时候(如char *p、str[5]等)

str+3就表示对地址的操作,如:

char str[5] = {'a', 'b', 'c', 'd', 'e'}; // 定义char型数组并初始化
char *p;    // 定义char型指针
p = str+3;  // 将指针p指向str数组中第4个元素(下标从0开始)的地址
printf("%c", *p);  // 输出字符'd'

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-09
如果str是个字符数组的名字的话,那么str+3就是这个数组中下标为3的元素的地址本回答被网友采纳
第2个回答  2011-12-09
如果str定义为指针str+3表示str的地址处加3处的地址;
如果str定义为非指针如整形变量,则表示str数值加3
第3个回答  2020-06-28
str只是编写程序的人员定义的一个变量,常用来表示字符型变量或字符串,取string的前三个字母。
第4个回答  2011-12-09
str是什么定义,如果是字符指针就是首地址加上3个字节的地址。