How would you declare a variable pi that holds the value of pi up to several decimal places?
- decimal pi = 3.14159265359;
- double pi = 3.14159265359;
- float pi = 3.14;
- int pi = 3;
In C++, to store the value of pi up to several decimal places, you would typically use the double data type. The double data type provides greater precision compared to float or int, making it suitable for representing the value of pi with more decimal places.
In C++, the conditional operator ______ is a ternary operator.
- ?:
- if-else
- switch
- while
In C++, the conditional operator "?:" is commonly known as the ternary operator. It is a shorthand way to write conditional expressions and is often used to assign values based on a condition. The operator takes three operands: a condition, a value if the condition is true, and a value if the condition is false.
The main function's standard signature returns an integer and accepts ______ arguments
- four
- one
- three
- two
The standard signature for the main function in C# and many other programming languages returns an integer and accepts two arguments, typically string[] args for command-line arguments.
In a switch statement, each case ends with the ______ keyword to prevent fall-through.
- break
- continue
- goto
- return
In a switch statement in C++, each "case" ends with the "break" keyword. The "break" statement is crucial in switch statements to prevent fall-through, meaning that once a case is matched and its code block is executed, the program exits the switch block.
What will be the flow of control in a switch statement if there is no break keyword at the end of a case?
- It will continue to execute the next case
- It will return to the main function
- It will terminate the switch statement
- It will throw an error
In C/C++, if there's no break statement at the end of a case in a switch statement, the control will continue to execute the next case statements without any regard for the case conditions. This behavior is known as "fall-through." It's important to use break statements to avoid unintended fall-through.
Bob is noticing that his compiled program size is much larger than expected after he marked several lengthy functions as inline. What could be a reason for this?
- Code Duplication
- Compiler Optimization
- Linker Error
- Memory Leaks
One reason for Bob's compiled program size to increase after marking lengthy functions as inline is code duplication. When functions are marked as inline, their code is replicated at each call site. If the function is lengthy and called from multiple places, this can lead to increased code size. It's essential to strike a balance between inlining for performance and avoiding excessive code duplication.
Ethan is writing a large C++ project. To maintain clarity, he wants to keep function declarations separate from their definitions. How might he structure his program to achieve this?
- Combine declarations and definitions in a single source file
- Use header files (.h) for declarations and source files (.cpp) for definitions
- Use inline functions for both declarations and definitions
- Use namespaces to separate declarations from definitions
To keep function declarations separate from their definitions in C++, Ethan can use header files (.h) for declarations and source files (.cpp) for definitions. This practice enhances code organization, reusability, and maintainability in large projects.
In C++, if a floating-point number is assigned to an integer type, the value will be ______.
- Rounded Up
- Truncated
- Type Error
- Undefined
When a floating-point number is assigned to an integer type in C++, the value will be truncated. This means that the fractional part of the floating-point number is discarded, and only the whole number part is stored in the integer variable. It's essential to be aware of this behavior to prevent unexpected results in your code.
Which loop structure is best suited for scenarios where the number of iterations is known beforehand?
- do-while loop
- for loop
- if-else loop
- while loop
The for loop is best suited for scenarios where the number of iterations is known beforehand. It's a compact loop structure that allows you to initialize a variable, define a condition, and specify an increment or decrement in a single line. This makes it ideal for loops with a fixed number of iterations, such as iterating through arrays or performing a set number of calculations.
To ensure portability of your C++ program across different platforms, you can use data types like ______ which have a fixed size.
- auto
- double
- float
- int32_t
To ensure portability, you can use fixed-size integer data types like int32_t from the header. These types guarantee a consistent size across platforms, making your code less dependent on the underlying system's architecture. This is crucial when dealing with binary data or network protocols.