欧美色视频免费_2018亚洲男人天堂_好骚综合在线_久久久久久久久国产_日韩精品久久久久久久九岛_国产成年人视频

推廣 熱搜: 廣場  Java  app  Word  營業  微信公眾號  北京代理記賬  商城  代理記賬  商標交易 

c語言系統如何判斷真和假 c語言輸入一個整數,判斷是奇數還是偶數?

   2023-04-29 企業服務招財貓170
核心提示:c語言輸入一個整數,判斷是奇數還是偶數?#includestdio.hmain(){intx;Printf(請輸入整數);scanf(d,x);If(x20)printf(d是偶數。,x);Elsep

c語言輸入一個整數,判斷是奇數還是偶數?

#includestdio.hmain(){intx;Printf(請輸入整數);scanf(d,x);If(x20)printf(d是偶數。

,x);Elseprintf(d是奇數。

,x);}

c語言:是一種通用的計算機編程語言,應用廣泛。C語言的設計目標是提供一種能夠以簡單的編譯處理低級內存,生成少量機器碼,無需任何運行環境支持即可運行的編程語言。目前C語言編譯器普遍存在于各種操作系統中,如UNIX、MS-DOS、微軟Windows、Linux等。C語言的設計影響了后來的很多編程語言,比如C,Objective-C,Java,C#等等。

計算機二級C語言,到底是不是考原題?

幾乎,有時你不我甚至不需要記住答案,只要有一點印象就可以了。看大題。反正選擇題一般都不對。不像C語言,選擇題是有要求的(如果你不考試不及格,考前做幾套題,能看就看不要吃完它們。看運氣了。我想出了一個原題,一個考前晚上快速閱讀的原題,還有一個簡單的PPT。我的同學也是,他沒有。;不怎么看題,考了原題。還有一個哥哥姐姐比我好。她努力工作。她刷了第一次考試沒有t刷五套。考試超級難。無原創問題。掛機,全刷第二遍,拿一個原創題,超級難。現在我在午休,他在床下站了三次,為他難過了5秒。太糟糕了。

在C語言程序中,怎樣判斷數據是否損壞,常用的方法是什么,有什么技巧嗎?

謝謝邀請我。

在實際的C語言程序開發中,經常需要保存一些非常重要的數據,這些數據需要保證不被損壞。那么我們該怎么辦呢?首先要明白,在C語言中,復雜的數據一般是通過結構來組織的。所以C語言中的結構非常有用。

C語言中的結構非常有用。例如,當描述人C語言中的身高、體重、年齡、性別和姓名,使用結構非常方便。相關的C語言代碼可定義如下:

上面的C語言代碼定義了person結構,用來描述每個人需要統計的信息。一般來說,統計信息往往需要記錄在磁盤上。如果這些信息很重要,通常需要一份以上的副本。這樣,當數據損壞時,可以從備份中修復損壞的數據。

如何判斷數據是否損壞?但是,C語言程序如何知道磁盤中存儲的數據是否損壞?這其實需要驗證的幫助,一個很常見的驗證方法就是crc32驗證。Crc32校驗可以根據數據的長度(幾個字節)生成一個32位的數。理想情況下,不同的數據會生成不同的校驗值。

所以上面的人結構最好在正文中添加一個成員crc32。相關的C語言代碼如下。請看:

person結構假設int類型占用4個字節的內存空間。

這樣,當記錄數據時,首先計算該數據的crc32校驗值,然后將該數據與crc32校驗值一起存儲。以后讀取數據時,可以再次計算crc32校驗值,并與原來記錄的舊crc32校驗值進行比較。如果相等,可以認為數據沒有損壞。如果不相等,則表示數據損壞,可以啟動數據修復邏輯。

以上判斷數據是否損壞的方法,其實是有可能誤判的(現實和理想總是有差距的),但是概率比較小,所以crc32還是一個很好的數據驗證方法。

如何計算結構的驗算值和crc32的計算方法不是本節的重點,網絡上有很多資源。這里,直接假設用于獲得一條數據的crc32校驗值的函數的原型如下。請看C語言代碼:

至此,計算person的檢查值的C語言代碼似乎可以寫成如下形式:

想一想,為什么可以t我們直接計算crc32校驗值:get_crc32(amps,sizeof(structtests))?

顯然這個計算太麻煩了。如果結構成員很多,估計C語言程序員都要累死了。此外,如果將來向結構中添加新成員或刪除舊成員,用于計算crc32校驗值的C語言代碼也需要修改。可以看出,這樣計算crc32校驗值的代碼維護起來也很麻煩,容易出錯。

所以計算結構的校驗值的代碼一般不像上面寫的那樣,那么怎么寫呢?如果在結構測試中可以直接獲得crc32成員的偏移量,那么計算校驗值的C語言代碼就很好寫了:

那么,offset等于多少呢?許多c語言初學者會認為:

無論用這種計算crc32校驗值,都會帶來代碼維護困難、容易出錯、麻煩等問題。用這種方法計算的偏移量不等于結構試驗中crc32構件的偏移量,所以用這種方法計算校核值是不合適的。

還記得與有關的陷阱嗎?"內存對齊和結構嗎?(可以參考我的專欄《C語言經典面試題詳解》)

計算結構成員偏移量的小技巧眾所周知,C語言中結構的所有成員實際上都是一個接一個地存儲在內存中的,結構S的成員crc32肯定是在S后面的,所以,要計算結構成員的偏移量,我們實際上可以用"地址減法":

知道了原理,我們完全可以定義一個宏來計算結構中某個結構成員的偏移量。相關的C語言代碼如下接下來,請看:

由于結構成員地址減去結構地址等于成員的偏移量,所以如果結構地址為0,則成員的地址正好等于它在結構中的偏移量。現在我們寫一個測試用例,相關的C語言代碼如下。請看:

編譯并執行這段C語言代碼,得到如下結果:

一切都符合預期。現在可以方便的使用offset宏來計算結構人的校驗值。請看下面的C語言代碼:

而且不管以后如何調整person的成員,刪除還是添加,只要crc32是最后一個成員,計算check值的代碼就不需要更改,這樣的C語言代碼維護起來也很省心。

總結在C語言程序的開發中,如果要記錄在磁盤上的數據非常重要,就應該多保存一份,這樣才能盡可能保證數據不被損壞。關于如何判斷數據是否損壞,本節介紹了一種常用的crc32檢查方法,并在此基礎上討論了一種計算結構成員偏移量并封裝成宏的方法,特別有利于以后C語言代碼的維護。

歡迎在評論區一起討論提問。這些文章都是手工原創的。每天都有最簡單的C語言、linux等嵌入式開發介紹。如果你喜歡我的文章,請關注一波。你可以看到最新的更新和以前的文章。

 
反對 0舉報 0 收藏 0 打賞 0評論 0
 
更多>同類資訊
推薦圖文
推薦資訊
點擊排行
合作伙伴
網站首頁  |  關于我們  |  聯系方式  |  使用協議  |  版權隱私  |  網站地圖  |  排名推廣  |  廣告服務  |  積分換禮  |  網站留言  |  RSS訂閱  |  違規舉報  |  冀ICP備2023006999號-8
 
主站蜘蛛池模板: 九九九九精品 | 在线免费观看亚洲 | 久久中文字幕免费视频 | 久久精品一 | 伊人免费视频 | 久久久久久久久久国产 | 日韩欧美自拍 | 精品久久久久久久久久中文字幕 | 99亚洲| 成人黄色电影在线观看 | 91成人国产| 午夜视频污 | 国产成人免费看一级大黄 | 日日干夜夜欢 | 欧美 日韩 亚洲 国产 | 99精品国产热久久91蜜凸 | 久久曰| 国产精品一区二区三区免费看 | 久久福利一区二区 | 毛片在线看片 | 久久免费av | 日韩视频一区 | 国产精品一区三区 | 精品国产一区二区三区日日嗨 | 日批视频免费 | 精品小视频 | 日本乱偷中文字幕 | 久久久www成人免费无遮挡大片 | 二区在线播放 | 国产精品一区二区三区免费观看 | 亚洲一级在线 | 黄色av电影 | 中文字幕免费在线观看 | 久久9热| 中文字幕在线免费 | 一区在线观看视频 | 欧美日韩综合精品 | 午夜欧美一区二区三区在线播放 | 日本亚洲欧美 | 欧美视频一区二区在线观看 | 精品国产乱码久久久久久影片 |