memset在unsigned char和unsigned int 使用区别

傷城~ 2023-06-16 10:39 149阅读 0赞

1,我们在数组初始化过程中常常遇到很多问题,比如我们将一组数组数据初始化为全部为同一数据时我们怎么初始化呢,用for循环还是memset呢

  1. #include<stdio.h>
  2. #include<string.h>
  3. typedef struct stu
  4. {
  5. int num;
  6. int id;
  7. int freq;
  8. int bandwidth;
  9. }MES;
  10. //结构体数组的初始化
  11. MES g_mes[10] = {
  12. {0}};
  13. int main()
  14. {
  15. unsigned char a[4];
  16. unsigned int b[4];
  17. unsigned char c[4];
  18. unsigned int d[4];
  19. unsigned char e[4];
  20. //列表初始化
  21. unsigned char d[4] ={1,1,1,1};
  22. //memset数组初始化
  23. memset(a,1,4);
  24. memset(b,1,4);
  25. int i = 0;
  26. int j = 0;
  27. int k = 0;
  28. int m = 0;
  29. for(i=0;i<4;i++)
  30. printf("a[%d]=%d ",i,a[i]);
  31. printf("\n");
  32. for(j=0;j<4;j++)
  33. printf("b[%d] = %d ",j,b[j]);
  34. printf("\n");
  35. //for循环初始化
  36. for(k=0;k<4;k++)
  37. {
  38. c[k] = 1;
  39. printf("c[%d] = %d ",k,c[k]);
  40. }
  41. printf("\n");
  42. for(m=0;m<4;m++)
  43. {
  44. d[m] = 1;

发表评论

表情:
评论列表 (有 0 条评论,149人围观)

还没有评论,来说两句吧...

相关阅读

    相关 unsigned int int

    就如同int a;一样,int 也能被其它的修饰符修饰。除void类型外,基本数据类型之前都可以加各种类型修饰符,类型修饰符有如下四种: 1.signed----有符号,可