13 KiB
title | TARGET DECK | FILE TAGS | tags | |
---|---|---|---|---|
Strings | Obsidian::STEM | c |
|
Overview
A contiguous sequence of characters terminated by the NUL
character (refer to ascii). Text data is said to be more platform-independent than endianness data since it is unaffected by word size or byte ordering.
%%ANKI
Basic
What is a C-style string?
Back: A character array terminated with a NUL
character.
Reference: Bryant, Randal E., and David O'Hallaron. Computer Systems: A Programmer's Perspective. Third edition, Global edition. Always Learning. Pearson, 2016.
END%%
%%ANKI
Basic
What character terminates all C-style strings?
Back: NUL
Reference: Bryant, Randal E., and David O'Hallaron. Computer Systems: A Programmer's Perspective. Third edition, Global edition. Always Learning. Pearson, 2016.
END%%
%%ANKI
Basic
What is the decimal value of NUL
in ASCII encoding?
Back: 0
Reference: Bryant, Randal E., and David O'Hallaron. Computer Systems: A Programmer's Perspective. Third edition, Global edition. Always Learning. Pearson, 2016.
END%%
%%ANKI Basic Text is more platform-independent than binary because it is unaffected by what two properties? Back: Word size and byte ordering. Reference: Bryant, Randal E., and David O'Hallaron. Computer Systems: A Programmer's Perspective. Third edition, Global edition. Always Learning. Pearson, 2016.
END%%
printf
The syntax for the format placeholder is %[flags][width][.precision][length]specifier
.
Flag | Description |
---|---|
- |
Left-aligns the output |
+ |
Prepends a plus for positive signed-numeric types |
␣ |
Prepends a space for positive signed-numeric types |
0 |
Prepends zeros for numeric types |
%%ANKI
Cloze
The {-
} flag {left-aligns the output}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Basic
The -
flag overrides what default behavior?
Back: Output is right-aligned by default.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Cloze
The {+
} flag {prepends a plus for positive signed-numeric types}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Basic
The +
flag overrides what default behavior?
Back: Nothing is prepended to positive signed-numeric types by default.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Cloze
The {␣
} flag {prepends a space for positive signed-numeric types}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Basic
The ␣
flag overrides what default behavior?
Back: Nothing is prepended to positive signed-numeric types by default.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Basic
How do the +
and ␣
flags relate to one another?
Back: Both prepend a character to positive signed-numeric types.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Basic
What happens if both the +
and ␣
flags are specified?
Back: The +
flag takes precedence.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Cloze
The {0
} flag {prepends zeros for numeric types}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Basic
What option must be specified for the 0
flag to take effect?
Back: The "width" option.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
%%ANKI
Basic
The 0
flag overrides what default behavior?
Back: Spaces are used to match the "width" option by default.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
END%%
Specifier | Description |
---|---|
d , i |
a decimal signed int |
u |
a decimal unsigned int |
x |
a hexadecimal unsigned int (lowercase) |
X |
a hexadecimal unsigned int (uppercase) |
o |
an octal unsigned int |
s |
a NUL -terminated string |
c |
a char character |
p |
void* address in an implementation-defined format |
%%ANKI
Basic
What character do printf
format specifiers start with?
Back: %
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
Why is printf
named the way it is?
Back: It stands for print formatted.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Cloze
The {d
and i
} format specifer(s) output a(n) {decimal signed int
}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Cloze
{d
and i
} are to signed
as {u
} is to unsigned
.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Cloze
The {u
} format specifier(s) output a(n) {decimal unsigned int
}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
What distinguishes format specifiers d
and i
?
Back: Nothing.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
Which format specifier(s) were probably used to yield printf
output -12
?
Back: d
or i
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
What distinguishes format specifiers d
and u
?
Back: The former is for signed integers, the latter unsigned.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Cloze
The {x
} format specifier(s) output a(n) {lowercase hexadecimal unsigned int
}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
Which format specifier(s) were probably used to yield printf
output 7af
?
Back: x
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Cloze
The {X
} format specifier(s) output a(n) {uppercase hexadecimal unsigned int
}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
Which format specifier(s) were probably used to yield printf
output 7AF
?
Back: X
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
What distinguishes format specifiers x
and X
?
Back: The former outputs lowercase hex digits, the latter uppercase.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Cloze
The {o
} format specifier(s) output a(n) {octal unsigned int
}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
Why doesn't the o
format specifier have a corresponding O
specifier?
Back: There is no distinction between lower and uppercase octal digits.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Cloze
The {s
} format specifier(s) output a(n) {NUL
-terminated string}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
Which format specifier(s) were probably used to yield printf
output abc
?
Back: s
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Cloze
The {c
} format specifier(s) output a(n) {char
character}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
Which format specifier(s) were probably used to yield printf
output a
?
Back: c
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Cloze
The {p
} format specifier(s) output a(n) {void*
address}.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
Which format specifier(s) were probably used to yield printf
output 0b80000000
?
Back: p
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
%%ANKI
Basic
How is the address outputted by the p
format specifier written?
Back: In an implementation-specific way.
Reference: “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.
Tags: printf
END%%
References
- Bryant, Randal E., and David O'Hallaron. Computer Systems: A Programmer's Perspective. Third edition, Global edition. Always Learning. Pearson, 2016.
- “Printf,” in Wikipedia, January 18, 2024, https://en.wikipedia.org/w/index.php?title=Printf&oldid=1196716962.