user79519: So I have a byte-array representing the display attached to my Arduino:
byte theDisplay[8] = {
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000
};

Now I want to flip a single bit at an arbitrary position:
theDisplay[3][6] = 1;

This (probably) faulty method produces these errors:
In function 'void setup()':
sketch_sep14c:13:18: error: invalid types 'byte {aka unsigned char}[int]' for array subscript
   theDisplay[3][6] = 1;
                  ^
exit status 1
invalid types 'byte {aka unsigned char}[int]' for array subscript

Is there an easy way to flip a single bit working with indexes like shown above?

user42015: The error occurs, because you try to use the syntax for a 2 dimensional array with a 1 dimensional array (since you have an array of bytes, not bits, and a microcontroller always works with at least one byte). For accessing the individual bits you need to use bitwise operators. For example this:
theDisplay[3] |= (1 << bitnumber); // for setting the bit
theDisplay[3] &= ~(1 << bitnumber); // for clearing the bit

with bitnumber being the number of the bit to change counted from least significant bit (in the binary representation in your code the rightmost digit) to most significant bit (the leftmost digit).
If you want to know, what exactly this does, you can google for bitwise operators in C++.

79519: <p>So I have a <code>byte</code>-array representing the display attached to my Arduino:</p>
<pre class="lang-c prettyprint-override"><code>byte theDisplay[8] = {
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000
};
</code></pre>
<p>Now I want to flip a single bit at an arbitrary position:</p>
<pre class="lang-c prettyprint-override"><code>theDisplay[3][6] = 1;
</code></pre>
<p>This (probably) faulty method produces these errors:</p>
<pre><code>In function 'void setup()':
sketch_sep14c:13:18: error: invalid types 'byte {aka unsigned char}[int]' for array subscript
   theDisplay[3][6] = 1;
                  ^
exit status 1
invalid types 'byte {aka unsigned char}[int]' for array subscript
</code></pre>
<p>Is there an easy way to flip a single bit working with indexes like shown above?</p>
 42015: <p>The error occurs, because you try to use the syntax for a 2 dimensional array with a 1 dimensional array (since you have an array of bytes, not bits, and a microcontroller always works with at least one byte). For accessing the individual bits you need to use bitwise operators. For example this:</p>
<pre><code>theDisplay[3] |= (1 &lt;&lt; bitnumber); // for setting the bit
theDisplay[3] &amp;= ~(1 &lt;&lt; bitnumber); // for clearing the bit
</code></pre>
<p>with <code>bitnumber</code> being the number of the bit to change counted from least significant bit (in the binary representation in your code the rightmost digit) to most significant bit (the leftmost digit).</p>
<p>If you want to know, what exactly this does, you can google for bitwise operators in C++.</p>
