【C/C++】--- 基础C语言的知识复习

一段时间不写代码,真的会手生,一些简单的知识点都快忘了。单开个帖子 ,记录下自己曾经以往的C知识,以便以后复习。

1. 如何使用宏定义定义一个数组?

根据查阅的资料,目前貌似单纯使用宏不可以定义一个数组。

 

2. 字符串数组的长度计算

假如定义了一个二维的字符串数组,必须指定每个维度的字符串最大数值多少。其次计算该二维数组中有多少个数组的话,此处必须用二维数组的形式表示,不可以用指针数组的形式表示。

1 char PRODUCTNAME1[][10] = {"SEC5630","SE5678","sdfsdfdfs"};
2 printf("pro name = %d\n",sizeof(PRODUCTNAME1)/sizeof(PRODUCTNAME1[2]));
3 
4 char *PRODUCTNAME1[10] = {"SEC5630","SE5678","sdfsdfdfs"};  //指针数组,不可以用上面的计算方式得到该二维数组中有多少个字符串

 

3. 关于变量的定义,如果定义了某个变量并且在定义时赋值的话,该变量要在.c文件中,不应在.h文件中

 

4. 定义一个字符串数组,sizeof和strlen的区别

1 char tmpstr[] = {"12345"};
2     
3 printf("PRODUCTNAME = %d\n",sizeof(tmpstr));
4 printf("pro name = %d\n",strlen(tmpstr));

如上输出结果为:   6    //    5

因此可得,sizeof计算字符串长度时,包括最后的‘\0’

     strlen函数计算字符串长度时,不包括最后结尾的‘\0’ 

 

posted @ 2020-02-19 17:18  一粒厘米  阅读(244)  评论(0编辑  收藏  举报