ncry.net
当前位置:首页 >> 数组长度怎么算 >>

数组长度怎么算

#include <stdio.h>#include <string.h> int main() { int i; char s[]="1234"; //两种方法,一是直接调用函数strlen,一是直接计算,计算值会多1 //因为多了个数组结尾符'\0\' printf("长度是:%d %d\n",strlen(s),sizeof(s)/sizeof(char)); //结果是4,5 for(i=0;i<strlen(s);i++)//遍历访问数组时,用strlen(s)作为长度限定输出即可. printf("%c",s[i]); printf("\n"); return 0; }

整形数组大小:sizeof(数组名)/sizeof(数组类型).字符数组大小:strlen(数组名)+1,1因为要加上'/0',所以再加1.

比如获取一个int类型数组的长度:int example[20]; int arrlength; arrlength = sizeof(example) / sizeof(int);这样就行了.

int data[]={1,2,3,4,5}; printf("%d",sizeof(data)/sizeof(int));

int a[2][2]; int len1=a.length;行长度 int len2=a[i].length.列长度

可以通过”scanner“函数 直接输入参数的形式,创建一个新数组即可,举例:import java.util.scanner; public class test { public static void main(string[] args) { scanner input=new scanner(system.in); system.out.println("请输入一个数组长度:

你记住两点:1.c风格字符串只要是使用双引号(半角)的,都会以\0结束,就是说会多出一个字符.2.凡是数组没有指名大小的定义,全部都会以赋值号右边的初始化长度作为数组默认大小.那么你的问题解答如下:字符串"abcd"长度为4,

strlen()函数统计的是字符串长度,不是数组长度,忽略最后\0,不考虑\0 , 如果你想得到 数组长度,使用sizeof(str)即可,输出是6

你的两个数组的长度都是 80.如果不是动态开辟的数组,你声明的时候给多少长度就是多少长度.第二个数组的长度是2?估计你使用 strlen 函数求吧? strlen只能求字符串长度,没办法求数组长度.strlen 是用 '\0' 来判断字符串的结束标志的,而你第二个数组中放置了几个'\0' (ascii码为0,),所以得到的长度是 2.将第二个数组改为char m[80]={'1','1','0','1','0','0','0'}; 用 strlen 求得结果为 7.求数组长度的正确方法:sizeof(mes)/sizeof(int); sizeof(mes)/sizeof(char)

#include using namespace std; int main() { int a[10]; int b=sizeof(a)/sizeof(int);//关键这句话,测试数组所占字节数,再除以数组一个元素所占的字节数 cout}

acpcw.com | ldyk.net | mwfd.net | 369-e.com | nczl.net | 网站首页 | 网站地图
All rights reserved Powered by www.ncry.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com