程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C說話平安編碼之數值中的sizeof操作符

C說話平安編碼之數值中的sizeof操作符

編輯:關於C++

C說話平安編碼之數值中的sizeof操作符。本站提示廣大學習愛好者:(C說話平安編碼之數值中的sizeof操作符)文章只能為提供參考,不一定能成為您想要的結果。以下是C說話平安編碼之數值中的sizeof操作符正文


平日來講獲得數組的長度時不要對指針運用sizeof操作符。

現來看看上面這段代碼:

void clear(int array[]) {
  for(size_t i = 0; i < sizeof(array) / sizeof(array[0]); i++) {
    array[i] = 0;
  }
}
void dowork(void) {
  int dis[12];
  clear(dis);
  /*...*/
}

clear()應用sizeof(array) / sizeof(array[0])這類用法肯定這個數組的元素數目,但因為array是一個形參,是以它是指針類型,sizeof(array) = sizeof(int *) = 4  (32位OS)

當sizeof操作符運用於聲明為數組或函數類型的形參時,它會發生經由調劑的(指針)類型的長度

對此成績的處理計劃以下:

void clear(int array[], size_t len) {
  for(size_t i = 0; i < len; i++) {
    array[i] = 0;
  }
}
void dowork(void) {
  int dis[12];
  clear(dis, sizeof(dis) / sizeof(dis[0]));
  /*...*/
}

s></returns> public static string GetRandomValue() { Random Seed = new Random(); string RandomVaule = Seed.Next(1, int.MaxValue).ToString(); return RandomVaule; } /// <summary> /// 哈希加密一個字符串,sharejs.com /// </summary> /// <param name="Security"></param> /// <returns></returns> public static string HashEncoding(string Security) { byte[] Value; UnicodeEncoding Code = new UnicodeEncoding(); byte[] Message = Code.GetBytes(Security); SHA512Managed Arithmetic = new SHA512Managed(); Value = Arithmetic.ComputeHash(Message); Security = ""; foreach(byte o in Value) { Security += (int) o + "O"; } return Security; } } }

願望本文所述對年夜家的C#法式設計有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved