Consider the following code:  #include &lt;iostream&gt; #include &lt;conio.h&gt;&gt;  using namespace std;  class book  {      char Title;     int no_of_pages;  public:      void read();      void show();  };   int main() {     book ob;     char Title;     cout &lt;&lt; sizeof(book) &lt;&lt; " " &lt;&lt; sizeof(Title) &lt;&lt; endl;      getch();     return 0; }   The output of the code is      8 1   If I change the definition of 'Title' in the class to following:     char Title[5];   and the main() 'Title' to     char Title[5];   the output changes to:     12 5   To see if this is something which is done to all string variables in the program, I used the 'Title' in main(). But, the pattern is apparent for a string declared in a class.  For the sake of completion, the pattern is :      Size of character array is taken to be the least multiple of 4 greater than the actual size of array   Question: Although I understand it is implementation dependent, does anyone know or can suggest a reason for this behaviour of C++ 11?  My compiler is VS 2012, for 64-bit Windows.
Why does the sizeof operator return a size larger for a structure than the total sizes of the structure's members?
Why are there non-visible objects in my final render? Theoretical Proof of Pauli's Exclusion Principle What hardware does Ubuntu Touch support? try+gerund/infinitive (Difference in meaning) I tried to open the door. I tried opening the door   We can use both infinitive and gerund with verb "try" as used in above sentences. Does it change the meaning of the  sentence if use gerund or infinitive?.(here i don't know if the meaning of sentences is changed.)     The same confusion arise in these two sentences.  1.I stopped seeing him. 2. I stopped to see him.(But in case of these two sentence i know the meaning is changed but don't know exactly what the change is). I am new to Ubuntu. I am Using Ubuntu 18.04 along with Windows10. I have gone through the below Q&amp;A and could able to change the name of Ubuntu,      But   if i edit the Ubuntu OS name to my choice, it is then adding "GNU/Linux" at the end. for ex. if i want "Ubuntu 18.04" it is then showing as "Ubuntu 18.04 GNU/Linux". how to avoid this text "GNU/Linux" how to edit the name to my choice which is shown as "Windows Boot Manager (on /dev/sda1)"        Update: I Confirm about the text "GNU/Linux" is solved by @Terrance comments. I still need to try about windows entry.      Final Update: Solved.    I thank @Terrance, @Oldfred, @WinEunuuchs2Unix. All the three methods are working great. i felt the small script is awesome and very very easy to use. which is written by WinEuuuchs2Unix. The program ed, a minimal text editor, cannot be exited by sending it an interrupt through using Ctrl-C, instead printing the error message "?" to the console.  Why doesn't ed just exit when it receives the interrupt?  Surely there's no reason why a cryptic error message is more useful here than just exiting.  This behavior leads many new users into the following sort of interaction:   $ ed hello ? help ? exit ? quit ? ^C ? ^C ? ? ? ^D $ su # rm -f /bin/ed    Such a tragic waste—easily avoidable if ed simply agreed to be interrupted.  Another stubborn program exhibiting similar behavior is less which also doesn't appear to have much reason to ignore C-c.  Why don't these programs just take a hint? Biblatex/biber fails with a strange error about missing recode_data.xml file I'm trying to use biblatex and when I compile my document I get an error like the following:  Windows  data source C:\Users\&lt;username&gt;\AppData\Local\Temp\par-5061756c\ cache-890efc00b3ca6b775c7d44a325c1349fb2a3a3bd\inc\lib/Biber/LaTeX/recode_data.xml not found in .   Mac  data source /var/folders/v2/rld0ls7d2935gkvqv5hfr1x00000gn/T/par-616c616e/ cache-cdd483146f82a9655ce063f848d5139480fbf872/inc/lib/Biber/LaTeX/recode_data.xml not found in .   Linux  data source /tmp/par-6963617269756d/cache-f37ab610b7d79b2720a8ee3732849c6821705520 /inc/lib/Biber/LaTeX/recode_data.xml not found in . Maximum number of edges in a simple graph? I found that the maximum number of edges in a simple graph is equal to $$\sum\limits_{i=1}^{n-1} i$$  Where $n =$ number of vertices.  For example in a simple graph with $6$ vertices, there can be at most $15$ edges.  If there were any more edges then $2$ edges would connect the same pair of vertices and thus would not be a simple graph.  Is this a known theorem? When using Alt+Tab, I can't seem to get back to Skyrim. When clicking its icon or Alt+Tab to get back, I just see an empty window. Windowed mode doesn't allow me to use it in a Windowed (Fullscreen) manner as seen with other games, so that doesn't seem to be an option either. Is there any way to fix this behavior? Prove that $k[x,y,z,w]/(xy-zw)$, the coordinate ring of $V(xy-zw) \subset \mathbb{A}^4$, is not a unique factorization domain I want to show that $k[x,y,z,w]/(xy-zw)$, the coordinate ring of $V(xy-zw)\subset\mathbb{A}^4$, is not a unique factorization domain.    Morally, all we need to do is find some nonzero element that can be written in two distinct ways as a product of irreducible elements, but nothing is coming to mind immediately. Thoughts? Does $E = mc^2$ apply to photons? Photons are massless, but if $m = 0$ and , then $E = 0c^2 = 0$. This would say that photons have no energy, which is not true.  However, given the formula $E = ℎf$, a photon does have energy as $ℎ$ is a non-zero constant and photons with a zero frequency do not exist.  What am I missing here, or does the famous formula not apply to photons? Weird $3^n$ in an identity to be combinatorially proved As it is common with people from my country, I have an immense difficulty with prepositions in English, especially with the use of in and on.   When the preposition indicates the position of the object it is a bit easier to decide which one to use, but as it requires thinking from me, I still say things like "I put the bill in the fridge", "my pencil is on my bag", etc, even though if I think about it, I would know how to say it correctly.  Of course, even in those cases where the preposition indicates position the decision is not always clear, as is the case for example with "on the bus" (you are not on top of the bus, you are inside the bus) or "he is in bed" (you are not inside the bed, you are on top of your bed).  Other cases are even less clear, and I believe there is no real rule to decide what should be said; the person should just know it. Two examples are "in a bad mood", "you are on my mind".  So my first question is whether there is really no rule to help me. The second question refers to two of the cases where I still don't know whether to use in or on:   good luck on/in your exam in/on the list   The last one is especially important to me, as I have asked a number of native speakers, and each time I get a different answer. The only consensus seems to be the case where you say "on top of the list". Apart from that, some people will say that I should say "his name is in the list" whereas others think I should say "his name is on the list". And yeah, a couple of people did tell me that I can use either.  Can someone help me? How to list all functions in a Python module? Unsung hero dilemma This is partly related to  question.  I ran some queries on odata for my work on Stack Overflow, and I have found that my statistics are the following ones:  Accepted answers: 148 Zero score accepted answers: 36 Percentage of total: 24,3%  I probably fit the idea of the Unsong hero badge, as I've mostly been active in  questions, from when it only had around 200 Questions until now.  To get the badge I could either try to get one of my accepted answers downvoted once, that would give me a 25% accept rate; I could also delete 4 of my accepted answers with 1 or more score. That would also give me the badge, but this just seems wrong: You are actually encouraging me to either try to get a down-vote on a good answer, or delete good answers.  So, should I delete good answers to receive a gold badge?  Update: It's not that I care much if I get a badge or not, it's only a badge after all and not why I spend time on Stackoverflow anyways. But it's not ideal [read: problem] that I'm encouraged to delete accepted answers or try to get downvotes to achieve a badge. I understood the very basic concept of how to use /etc/network/interfaces, but all I find online are examples, example after example, which I can copy-paste from. What I miss is an explanation of the syntax, an explanation of the meaning of the commands and which order the commands require. I want to understand, because most of the time copy-paste is not enough, because I'm not working on a fresh machine, so I can't just overwrite existing configurations because it would break a lot of stuff. man interfaces was not very helpful since it is written very complicated.  Example questions I have: what does inet in an iface line mean exactly (I could not even find it in the manpage), what does manual in an iface line mean exactly (many examples use it, but according to manpage it needs an extra config file then, which the examples don't present), when do I use or need them? When not? When I create a bridge, what exactly happens to the interfaces? Is this sentence acceptable?     You’re welcome, have a nice day ahead. Assigning point IDs to respective start and end attributes of polyline? How do I reset my Unity configuration? I've been messing around with Unity and broke something, how do I "start over"? If a drive doesn't know about partitions and files systems why moving a file from one partition to another takes relatively long time, unlike the instantaneous move on the same partition? Is that file system inefficiency? In this case, NTFS. It seems like the file is being copied and then original is erased, instead of removing the entry about that file in one partition and making it in another?