cost 206 ms
序列點之間能否多次讀取volatile變量?

[英]Can volatile variables be read multiple times between sequence points?

我正在制作自己的 C 編譯器,以嘗試了解有關 C 的盡可能多的細節。我現在正試圖准確了解volatile對象的工作原理。 令人困惑的是,代碼中的每個讀取訪問都必須嚴格執行(C11,6.7.3p7): 具有 volatile 限定類型的 object 可能會以實現未知的方式進行修改或具有其他未知的副 ...

是否可以輸入雙關語分配的結構,僅在 const-ness 上有所不同?

[英]Is it okay to type-pun allocated structs varying only in const-ness?

在 C(如果需要具體的話,就說 C11),下面的程序是否定義明確? 它會始終打印a=3 b=4還是編譯器優化會影響 output? (現實世界的動機是提供只應該由特定模塊(即源文件)修改的結構的只讀公共“視圖”。) ...

C11中的原子陣列

[英]Atomic array in C11

根據參考資料, _Atomic類型說明符不能用於 arrays。 是否有標准方法/解決方法可以為存儲在數組中的 object 發出atomic_exchange調用? ...

如何將 C11 關鍵字 _Generic 與結構一起使用?

[英]How to use C11 keyword _Generic with struct?

有關的 C11中_Generic的語法和示例用法 _Generic 適用於 typedef 結構還是僅適用於原始類型? 如何將 _Generic 與 C 中類型定義的結構一起使用? 今天是個好日子! 我正在編寫一個區分輸入結構類型的宏。 我在 WinLibs 的 Windows 下使用 MinG ...

通過 c11 中的標准輸入從文件中讀取字符串

[英]reading string from a file via stdin in c11

所以我有一個 .txt 文件,我想使用 scanf() 在 c11 程序中通過 stdin 讀取該文件。 該文件本質上是由一個字符串組成的多行。 例子: 我怎么知道文件何時完成,我嘗試將字符串與僅使用 eof 字符的字符串進行比較,但代碼循環出錯。 非常感謝任何建議。 ...

檢查編譯器是否支持源代碼中的可選 C 功能

[英]Check if Compiler supports optional C feature in the source

我有一個簡單的程序(一個非常簡單的 malloc/free 實現,最初是為大學作業編寫的),它必須檢查 free 中指針的“有效性”,為此我需要取消引用它。 當用戶提供 bs 指針時,為了避免 Segfaults,我想檢查內存當前是否映射到我的地址空間。 我想用類似的東西來做到這一點 現在,問 ...

2022-07-03 09:25:27   2   54    c / gcc / clang / c11  
如何對齊但有偏移

[英]How to align but with offset

假設我需要分配struct A但b需要 4 對齊。 我想我可以手動填充malloc()返回的指針。 有什么更干凈的方法嗎? 就像 gcc 的__attribute__((aligned(4)))一樣,但它對齊了整個結構。 我不能改變它的布局。 ...

為什么不需要符合 IEC 60559 的實現來定義 __STDC_IEC_559__(為 1)?

[英]Why isn't an IEC 60559 conformant implementation required to define __STDC_IEC_559__ (to 1)?

C (C99+) 標准要求(雖然隱含地)一個符合要求的實現來將__STDC__定義為 1。 但是,C 標准不需要符合 IEC 60559 的實現來定義__STDC_IEC_559__ (為 1)。 結果: 在這里我們看到這些宏的語義不一致。 任何想法為什么? 這是一個可能的缺陷嗎? 為什么 C ...

GCC 在#include 之后在 C11 模式下未定義對 thrd_create() 的引用<threads.h>在 Debian</threads.h>

[英]GCC undefined reference to thrd_create() in C11 mode after #include <threads.h> in Debian

我正在嘗試編譯一個程序,我已經能夠在其他幾個 Debian 環境中編譯,使用 C11 &lt;threads.h&gt;庫在相對較新的安裝 Debian Bullseye 和“ gcc (Debian 10.2.1-6) 10.2.1 20210110 》已安裝用命令gcc -o &lt;prog ...

_Thread_local 是否獨立於 __STDC_NO_THREADS__?

[英]Is _Thread_local independent from __STDC_NO_THREADS__?

目前看來_Thread_local獨立於__STDC_NO_THREADS__ 。 結果:即使實現將__STDC_NO_THREADS__定義為 1,它仍然需要支持(至少接受) _Thread_local 。 我想這是一個缺陷。 那是對的嗎? UPD:C2x的相關提案: http://www.o ...

作為常量初始值設定項表達式的一部分,字符串文字轉換為 bool 是否有效?

[英]Is a string literal converted to bool valid as part of a constant initializer expression?

enum { compile_time_assertion = 1 / ("description" &amp;&amp; 1); }; 上面的代碼片段是否符合 C11? 將字符串文字作為表達式的一部分可能會違反初始化表達式的眾多約束之一。 6.6p7 列出了一個地址常量作為可能的初始化表達 ...

如何在 C++ 中高效地創建一個對象向量?

[英]How to create a vector of objects efficiently in C++?

vector&lt;vector&lt;int&gt;&gt; v(100, vector&lt;int&gt;(100)); // 101 vector&lt;int&gt; are created 我需要像上面那樣創建一個向量(或對象)向量。 但隨后將創建 101 個vector&lt;int ...

2022-03-19 17:16:59   1   138    c++ / c99 / c11  
_Static_assert 在未使用的通用選擇中

[英]_Static_assert in unused generic selection

看起來typeof運算符可能會被下一個 C 標准接受,我正在尋找是否有辦法利用它來使用可移植的 ISO-C 創建一個宏,該宏可以獲取傳入的數組的長度如果將指針傳遞給它,則編譯失敗。 通常,泛型選擇可用於在使用不需要的類型時通過將其排除在泛型關聯列表之外來強制編譯器錯誤,但在這種情況下,我們需要一個默 ...

聯合的別名數組

[英]Aliasing array of unions

這是這個問題的后續問題。 以下代碼在Compiler Explorer上。 雖然my_copy看起來做作,但訪問模式是由硬件強制執行的(必須對連續對齊的位置進行 2x 32 位寫入)。 丑陋的 rest 是由於不同開發人員相隔幾年編寫的幾段代碼的交集。 問題是,傳遞給my_copy的 argumen ...

2022-03-15 21:00:45   1   81    c / c99 / c11  
C 聯合型雙關語 arrays

[英]C union type punning arrays

鑒於以下代碼,我有一些與類型雙關相關的問題。 我看不出有任何方式表明這沒有違反嚴格的別名規則,但我無法指出具體的違規行為。 我最好的猜測是將工會成員傳遞到 function 違反了嚴格的別名。 以下代碼在Compiler Explorer上。 我的觀察: 假設 arguments 到func之間不 ...

2022-03-15 18:07:19   3   221    c / c99 / c11  
為什么我不能將 function 返回的結構分配給結構?

[英]Why I can't assign struct returned by a function to struct?

我寫了“輕量級”時間庫,我有這樣的結構和類型定義: 我有一個返回 tm_t 的tm_t : 我想這樣使用它: 我收到此錯誤: 從類型 'int' 分配給類型 'tm_t' {aka 'struct tmt'} 時類型不兼容我也試過像這樣更改 function 和變量: 我做錯了什么? ...

無法解決 STM32CubeIDE 中與指針數組相關的 C 警告

[英]Can't resolve C warning related to pointer array in STM32CubeIDE

面對一個我們無法擺脫的警告。 我正在使用帶有標准 C11 編譯器的 stm32 MCU 和 STM32CubeIDE。 我想我能理解為什么編譯器會發出警告,但問題是我無法解決。 任何幫助表示贊賞。 謝謝你。 指針數組是這樣定義的 要調用的function是這樣定義的: 實際的 function 調用 ...

Function 作為 for 循環的條件 - 有人在 C 中這樣寫嗎?

[英]Function as condition in for loop - does anyone write like this in C?

在使用 C#、Java 等高級語言多年后,我重新發現了 C 並且我正在使用類似泛型的函數,我正在嘗試編寫類似函子等的東西。 我寫了這樣的東西: 所以它有效。 問題是: C有人這樣寫嗎? 意見免費版: C專業程序員(操作系統、數據庫、標准庫源碼)會出現這樣的寫法嗎? 這是否被認為是不好的做法,不受歡 ...

2022-02-20 23:09:56   1   292    c / for-loop / c11  

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM