首頁  >  文章  >  後端開發  >  c語言sign函數什麼意思

c語言sign函數什麼意思

下次还敢
下次还敢原創
2024-04-13 18:09:32878瀏覽

C 語言的sign 函數根據給定整數的符號傳回以下值:正數傳回1負數返回-1零回傳0函數透過移位運算確定整數符號,MSB 為0 表示正數(返回1),MSB 為1 表示負數(回傳-1),MSB 為0 表示零(回傳0)。

c語言sign函數什麼意思

C 語言中sign 函數

引言
C 語言中的sign函數決定給定整數的符號。

函數原型
int sign(int x);

參數

  • x:要確定符號的整數。

傳回值

  • 傳回值可以是下列三個值之一:

    • 如果x 為正,則回傳1。
    • 如果 x 為負,則回傳 -1。
    • 如果 x 為零,則傳回 0。

工作原理
sign 函數使用移位運算來決定給定整數的符號。

  • x 的最高有效位元(MSB)為 0,則 x 為正數,函數傳回 1。
  • x 的最高有效位元為 1,則 x 為負數,函數傳回 -1。
  • 如果 x 為零,則最高有效位元為 0,函數傳回 0。

範例

<code class="c">#include <stdio.h>

int main() {
  int num1 = 5;
  int num2 = -12;
  int num3 = 0;

  printf("sign(%d) = %d\n", num1, sign(num1)); // 输出:sign(5) = 1
  printf("sign(%d) = %d\n", num2, sign(num2)); // 输出:sign(-12) = -1
  printf("sign(%d) = %d\n", num3, sign(num3)); // 输出:sign(0) = 0
  
  return 0;
}</code>

輸出

<code>sign(5) = 1
sign(-12) = -1
sign(0) = 0</code>

以上是c語言sign函數什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn