Skip to main content
assistive.skiplink.to.breadcrumbs
assistive.skiplink.to.header.menu
assistive.skiplink.to.action.menu
assistive.skiplink.to.quick.search
Log in
Confluence
Spaces
Hit enter to search
Help
Online Help
Keyboard Shortcuts
Feed Builder
What’s new
Available Gadgets
About Confluence
Log in
SEI CERT C Coding Standard
Pages
Boards
Space shortcuts
Dashboard
Secure Coding Home
Android
C
C++
Java
Perl
Page tree
Browse pages
Configure
Space tools
View Page
A
t
tachments (0)
Page History
Page Information
View in Hierarchy
View Source
Export to PDF
Export to Word
Pages
…
SEI CERT C Coding Standard
4 Back Matter
EE. Analyzers
SonarQube C/C++ Plugin
Page Information
Title:
SonarQube C/C++ Plugin
Author:
Robert Seacord (Manager)
Aug 15, 2014
Last Changed by:
David Svoboda
Sep 27, 2023
Tiny Link:
(useful for email)
https://wiki.sei.cmu.edu/confluence/x/TdUxBQ
Export As:
Word
·
PDF
Incoming Links
SEI CERT C Coding Standard (45)
Page:
DCL16-C. Use "L," not "l," to indicate a long value
Page:
DCL18-C. Do not begin integer constants with 0 when specifying a decimal value
Page:
INT12-C. Do not make assumptions about the type of a plain int bit-field when used in an expression
Page:
EXP30-C. Do not depend on the order of evaluation for side effects
Page:
INT33-C. Ensure that division and remainder operations do not result in divide-by-zero errors
Page:
MSC12-C. Detect and remove code that has no effect or is never executed
Page:
FLP30-C. Do not use floating-point variables as loop counters
Page:
PRE00-C. Prefer inline or static functions to function-like macros
Page:
DCL04-C. Do not declare more than one variable per declaration
Page:
EXP43-C. Avoid undefined behavior when using restrict-qualified pointers
Page:
MSC13-C. Detect and remove unused values
Page:
STR04-C. Use plain char for characters in the basic character set
Page:
INT07-C. Use only explicitly signed or unsigned char type for numeric values
Page:
PRE07-C. Avoid using repeated question marks
Page:
MSC37-C. Ensure that control never reaches the end of a non-void function
Page:
INT13-C. Use bitwise operators only on unsigned operands
Page:
MSC09-C. Character encoding: Use subset of ASCII for safety
Page:
DCL07-C. Include the appropriate type information in function declarators
Page:
EXP19-C. Use braces for the body of an if, for, or while statement
Page:
ENV33-C. Do not call system()
Page:
MSC07-C. Detect and remove dead code
Page:
INT36-C. Converting a pointer to integer or integer to pointer
Page:
ARR02-C. Explicitly specify array bounds, even if implicitly defined by an initializer
Page:
MEM31-C. Free dynamically allocated memory when no longer needed
Page:
EXP00-C. Use parentheses for precedence of operation
Page:
MSC00-C. Compile cleanly at high warning levels
Page:
STR00-C. Represent characters using an appropriate type
Page:
DCL31-C. Declare identifiers before using them
Page:
DCL23-C. Guarantee that mutually visible identifiers are unique
Page:
MSC01-C. Strive for logical completeness
Page:
EXP34-C. Do not dereference null pointers
Page:
ERR34-C. Detect errors when converting a string to a number
Page:
EXP37-C. Call functions with the correct number and type of arguments
Page:
STR07-C. Use the bounds-checking interfaces for string manipulation
Page:
STR10-C. Do not concatenate different type of string literals
Page:
EXP02-C. Be aware of the short-circuit behavior of the logical AND and OR operators
Page:
FIO46-C. Do not access a closed file
Page:
MSC20-C. Do not use a switch statement to transfer control into a complex block
Page:
EXP15-C. Do not place a semicolon on the same line as an if, for, or while statement
Page:
DCL20-C. Explicitly specify void when a function accepts no arguments
Page:
DCL37-C. Do not declare or define a reserved identifier
Page:
MSC17-C. Finish every set of statements associated with a case label with a break statement
Page:
FIO42-C. Close files when they are no longer needed
Page:
EXP45-C. Do not perform assignments in selection statements
Page:
MSC22-C. Use the setjmp(), longjmp() facility securely
Hierarchy
Parent Page
Page:
EE. Analyzers
Labels
Global Labels (1)
analyzer
Recent Changes
Time
Editor
Sep 27, 2023 08:26
David Svoboda
View Changes
Jul 13, 2023 13:28
David Svoboda
View Changes
Jun 06, 2023 12:24
David Svoboda
View Changes
Apr 19, 2023 14:01
David Svoboda
View Changes
Apr 06, 2023 07:59
David Svoboda
View Page History
Outgoing Links
External Links (98)
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
https://www.sonarsource.com/products/codeanalyzers/sonarcfa…
https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?p…
Overview
Content Tools
{"serverDuration": 137, "requestCorrelationId": "8c8a0e7b2507fd4d"}