網站首頁 編程語言 正文
C語言庫中提供了許多函數,這樣需要計算的時候,可以直接借助庫函數,而不用自己重新編寫函數。今天就來看一下C語言標準庫函數里面的整型函數。
int __cdecl abs(int _X); long __cdecl labs(long _X); div_t __cdecl div(int _Numerator,int _Denominator); ldiv_t __cdecl ldiv(long _Numerator,long _Denominator);
abs函數用來計算整數的絕對值,它的參數就是待計算的整數,返回值是計算后的絕對值。編寫一段簡單的代碼,演示一下這個函數的用法。
#include <stdio.h> #include <stdlib.h> int main(int argc, char** argv) { int x1 = 56,x2 = -89; int y1,y2; y1 = abs(x1); y2 = abs(x2); printf("%d %d",y1,y2); return 0; }
定義一個正整數,一個負整數,然后用abs函數分別求絕對值,然后將計算的結果打印出來。
如果傳遞進去的數字不是整數的話,輸出的結果是什么呢?
向abs函數里面分別傳入一個正的浮點數和一個負的浮點數,計算出來的結果依然是正整數,說明傳遞參數后,abs函數會將傳入的參強制轉換為整數,然后在進行計算。
labs函數的功能和abs函數的功能是一樣的,不過它主要用來計算長整數的絕對值。
div函數用來計算兩個數字相除的商和余數,它有兩個參數,用第一個參數(分子)除以第二個參數(分母),然后將商和余數存放在結構體中,返回的結果是一個結構體。它的結構體定義如下:
typedef struct _div_t { int quot; int rem; } div_t; typedef struct _ldiv_t { long quot; long rem; } ldiv_t;
quot?是商,rem?是余數。下面通過一段代碼來,來演示一下這個函數的用法。
#include <stdio.h> #include <stdlib.h> int main(int argc, char** argv) { int x1 = 10,x2 =3; div_t ret; ret = div(x1,x2); printf("%d %d",ret.quot,ret.rem); return 0; }
計算10 / 3的商和余數,輸出結果如下:
同樣負整數也可以使用這個函數進行計算。
ldiv函數的功能和div函數的功能一樣,不過它主要用來計算長整數的除法。
總結
原文鏈接:https://hxydj.blog.csdn.net/article/details/122961834
相關推薦
- 2022-01-17 EF關于報錯Self referencing loop detected with type的原因以
- 2022-04-23 uni-app之項目首頁實現步驟
- 2023-11-17 RuntimeError: a view of a leaf Variable that requi
- 2022-09-02 基于Python實現配置熱加載的方法詳解_python
- 2022-05-08 Python與C語言分別完成排序流程_python
- 2023-05-08 Python實現統計文章閱讀量的方法詳解_python
- 2023-05-08 Python中Generators教程的實現_python
- 2022-06-25 Gitlab-runner+Docker實現自動部署SpringBoot項目_docker
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支