char str[]="hello"; sizeof(str)是多少?
来源:互联网 发布:英语四级语法软件 编辑:程序博客网 时间:2024/05/22 11:56
#include <stdio.h>#include <stdlib.h>#include <string.h>int main(int argc, char **argv){char str[] = "Hello, World.";char sta[20] = "Hello";char *p = str;char abc = 'c';int ia = 4;int ic[10];/* 每个数组成员的大小是1,当然不要忘了后面还有一个结束符 '\0' */printf("str[] 14: %d\n", sizeof(str) );/* 固定数组长度,大小为数组长度值 */printf("sta[20] 20: %d\n", sizeof(sta) );/* 指针为地址,地址的长度和32位还是64位系统有关,32位系统为4, 64位系统值为8 */printf("*p 8: %d\n", sizeof(p) );/* 好理解,就是字符的大小 */printf("abc 1: %d\n", sizeof(abc) );/* int 占用4个字节 */printf("ia 4: %d\n", sizeof(ia) );/* 原理同字符数组 */printf("ic 40: %d\n", sizeof(ic) );return 0;}
运行结果如下:
(1) 64为ubuntu编译运行
str[] 14: 14
sta[20] 20: 20
*p 8: 8
abc 1: 1
ia 4: 4
ic 40: 40
(2) 32位arm编译运行
str[] 14: 14
sta[20] 20: 20
*p 8: 4
abc 1: 1
ia 4: 4
ic 40: 40
1 0
- char str[]="hello"; sizeof(str)是多少?
- char * str="hello"
- char str[]="hello" 与 char *str="hello" 不是等价的
- char str[] = "hello world";和char *str = "hello world";区别
- char str[] = "hello world";和char *str = "hello world";区别
- C中char str[] = "hello word";与char *str = "hello word";
- C++string str="abc";sizeof(str)
- char *str 和 char str[]
- char*str与char str[]
- string,char,char*,char a[], sizeof,strlen(),str.length()...
- strlen(str)和sizeof(str)
- char *Str;Str="abcdef";和char Str[]="abcdef";有什么区别??
- char *strdup(char *str)
- char str[], const char str[], const char *str区别
- const char *str, char *str, char str[]讨论
- sizeof strlen string.lenth()之例子 string,char,char*,char a[], sizeof,strlen(),str.length()...
- str=str.replace("<","!");
- C char str[] , char *str 区别
- Mysql基础教程
- 金山副总裁郭炜炜:长线游戏成主流 内容方布局VR尚早
- linux-C编程-网络编程
- (非递归的方法待研究)112. Path Sum
- ACM篇:Uva 679 -- Droping Balls
- char str[]="hello"; sizeof(str)是多少?
- 在Java中自定义的一个key对多个Value的map
- C typedef和#define的区别
- ASP.Net前台数据校验
- HTML入门学习笔记--CSS三大特性(4)
- register 关键字的作用
- 关于hadoop中maptask运行切片前,运行的文件有大量小文件问题
- 合并两个数组并删除重复的元素
- 转载:未来可能是这样子,极端烧脑的《未来简史》解读