数组001 基本语法

复制代码
#include<iostream>
using namespace std;

// 1、数组声明方式:
// 
//        1.1 只声明:
//                数据类型 数组名[数组长度]:int arr[10];//里面的元素未初始化,显示的结果不确定
// 
//        1.2 声明的时候初始化:
// 
//                1.2.1 数据类型 数组名[数组长度] = {元素1,元素2,元素3,元素4,元素5};     
//                1.2.2 数据类型 数组名[] = {元素1,元素2,元素3,元素4,元素5};//自动推断有多少个
//                1.2.3 大括号中元素个数小于数组长度,会自动补全,数值类型的补全为0,string补完之后,输出显示为空
//                1.2.4 数据类型 数组名[数组长度] = { }; // 把全部的元素初始化为0。

//                string类型的注意元素也要带双引号
// 
//        注意:C90规定必须用常量表达式指明数组的大小,C99允许使用 整型 非常量 表达式。
//                经测试,在VS中可以用用 整型 非常量 表达式,不能用变量;
//                但是,Linux中还可以用变量。
// 
//                常量表达式是表达式是由常量组成:int zen = 1000+200
//                非常量表达式是指表达式由非常量组成 :int yel = zen+200
// 
// 
// 2、数组的使用:
//        1.1 通过访问数组的下标来使用数组元素:数组名[下标]
//            使用数组元素就是在中括号里面加下标  num[3] = 7,和使用变量一样
//            注意:
//                数组下标必须是整数,可以是常量,也可以是变量,还可以是结果是常量的表达式
//                数组下标从0开始,最后一个元素是长度减一 .例如 int num[5]  
//                开始元素是num[0],尾元素是num[4]
//        1.2 还可以用循环使用数组  赋初值

// 3、数组内存占用:
//        3.1 数组在内存空间的占用是连续的,sizeof(数组名)可以显示数组所占内存空间
// 
// 4、清空数组:
//        用memset()函数可以把数组中全部的元素清零。(只适用于C++基本数据类型)
//            函数原型:void *memset(void *s, int c, size_t n);
//                第一个参数:数组名
//                第二个参数:填写的数字
//                第三个参数:整个数组占用内存空间的大小
// 5、拷贝数组:
//        用memcpy()函数可以把数组中全部的元素复制到另一个相同大小的数组。(只适用于C++基本数据类型)
//        函数原型:void* memcpy(void* dest, const void* src, size_t n);
//                第一个参数:目标数组名
//                第二个参数:被拷贝的数组名
//                第三个参数:整个数组占用内存空间的大小
//        注意,在Linux下,使用memcpy()函数需要包含头文件#include <string.h>
// 
//

int main(void) {

    int  name[5] = { 1,2,3,4,5 };
    cout << sizeof(name) << endl;

    
    int name1[4] = {};
    memcpy(name1, name, sizeof(name1));

    for (int i=0; i < sizeof(name1) / sizeof(int); i++) {
        cout << name1[i] << endl;
    }

    return 0;
}
复制代码

 

posted @   墨点Moz  阅读(8)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示