9.10C

博客介绍了C语言相关知识,包括十六进制数据优先解释为无符号类型,arr和&arr地址值相同但意义不同。还详细对比了strlen和sizeof的区别,如sizeof对不同数组表示方式的计算规则,以及运算类型和特定量时括号的使用情况,并给出示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.0XAA表示十六进制unsigned int类型的数据,对于八进制和十六进制,系统优先解释为无符号类型

2.arr和&arr对应的地址值一样,但 意义不一样

3.strlen和sizeof:

sizeof:

对于{}表示的数组,不计算\0,对于""表示的数组,计算 \0,并以位的方式输出

strlen:

读取到\0才停止(不包括\0),输出为字符(包括标点和空格等)

例如:

int main()
{
    char arr1[10] = {1,2,3};
    char arr3[] = { '1','2','3' };
    char arr2[] = "123";
    int sz1 = strlen(arr1);
    int sz2 = strlen(arr2);
    int sz3 = sizeof(arr1);
    int sz4 = sizeof(arr2);
    int sz5 = sizeof(arr3);
    printf("%d,%d,%d,%d,%d", sz1, sz2,sz3,sz4,sz5);
    return 0;
}输出为3,3,10,4,3

而且若给与数组大小,sizeof输出为数组大小的给定值,如sz3,而是strlen不会

另外:sizeof在运算类型时一定要圆括号,运算特定量时圆括号可有可无

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值