This may be trivial, but I'm new to C++ and an getting confused here.  I have the method:  bool load_database_file( const std::string&amp; filename, std::string&amp; contents ) {      std::ifstream is (filename, std::ifstream::binary);     if (is) {         // get length of file:         is.seekg (0, is.end);         int length = (int)is.tellg();         is.seekg (0, is.beg);          char * buffer = new char [length];          std::cout &lt;&lt; "Reading " &lt;&lt; length &lt;&lt; " characters... ";         // read data as a block:         is.read (buffer, length);          if (is)             std::cout &lt;&lt; "all characters read successfully.";         else             std::cout &lt;&lt; "error: only " &lt;&lt; is.gcount() &lt;&lt; " could be read";         is.close();          // ...buffer contains the entire file...          std::string str(buffer);         contents = str;          delete[] buffer;     }      return true ;   }   where I would like to read a file and assign it's contents to contents so that it can be read by the calling function.  My issue is that after this function is run, I see that only the first character of buffer was copied to contents.   How can I copy/convert the entire contents of buffer (a char *) to contents (a std::string).
How do I read a file into a std::string, i.e., read the whole file at once?  Text or binary mode should be specified by the caller. The solution should be standard-compliant, portable and efficient. It should not needlessly copy the string's data, and it should avoid reallocations of memory while reading the string.  One way to do this would be to stat the filesize, resize the std::string and fread() into the std::string's const_cast&lt;char*&gt;()'ed data(). This requires the std::string's data to be contiguous which is not required by the standard, but it appears to be the case for all known implementations. What is worse, if the file is read in text mode, the std::string's size may not equal the file's size.  A fully correct, standard-compliant and portable solutions could be constructed using std::ifstream's rdbuf() into a std::ostringstream and from there into a std::string. However, this could copy the string data and/or needlessly reallocate memory.    Are all relevant standard library implementations smart enough to avoid all unnecessary overhead?  Is there another way to do it?  Did I miss some hidden Boost function that already provides the desired functionality?     void slurp(std::string&amp; data, bool is_binary)
Proof that $A_n$ the only subgroup of $ S_n$ index $2$. I have what seems to me a very simple proof that $A_{n}$ is the only subgroup of $S_{n}$ of index 2.  Since I've seen other people prove it with what feel like really complicated methods (), I'm wondering if I've overlooked something.  Proof: Let $H$ be any subgroup of index 2 in $S_{n}$.  Then $H\cap A_{n}$ is a normal subgroup of $A_{n}$ and since $A_{n}$ is simple, $H$ is either the trivial or the improper subgroup of $A_{n}$.  If it's the trivial subgroup it doesn't have index 2 in $S_{n}$, and otherwise the theorem is proved. I am using longtable and I cannot find a way to adjust its column spacing. I want a table like this:    But I am getting this:    This is what I am doing for defining table size:   \begin{longtable}{p{.1\textwidth} p{.2\textwidth} p{.2\textwidth}p{.3\textwidth}}     xxxxx &amp; xxxxx &amp; xxx &amp; xxxxx\\     \end{longtable} How do I print a double value with full precision using cout? In my  I was printing a double using cout that got rounded when I wasn't expecting it.  How can I make cout print a double using full precision? Specific system of differential equations I have the following system of equations:  \begin{eqnarray}\frac{dx}{dt} = x(1 - x^2 - y^2) \\ \frac{dy}{dt} = y(4 - x^2 - y^2) \end{eqnarray}  I want to prove that if a solutions starts (at time $t = 0$) in the region   $$ G = \{(x, y) \in \mathbb{R}^2 : x &gt; 0, y &gt; 0 \text{ and } 1 &lt; x^2 + y^2  &lt; 4\} $$  that it remains there for all $t \geq 0$. I have already proven that, from $G$, a solution cannot cross the $x$-axis where $0 &lt; x &lt; 2$ or the $y$-axis where $0 &lt; y &lt; 2$ (since those line segments are orbits), but the pieces of the circles with radius 1 and 2 (where $x &gt; 0, y &gt; 0$) are the lines I haven't done yet. In this question we can focus on just the circle with radius 1 since the proof for the other circle is completely analogous to it.  In my book, there is a similar problem where they show that if a solution crosses a certain line, that solution attains its maximum or minimum value for $x$ and $y$, and then they derive a contradiction. However, in this case, for $n \geq 1$ the $n$-th derivative of $x$ equals 0 on the circle with radius 1. (If the second derivative were negative, $x$ would attain its maximum on the circle, a contradiction since $\frac{dx}{dt} &lt; 0$ in $G$, so $x$ is decreasing.)  I don't see why a solution can't cross the circle at all. On the circle, $\frac{dx}{dt} = 0$ and $\frac{dy}{dt} &gt; 0$, so after crossing the circle, the solution would go back up to $G$.  Is the circle itself an orbit?  EDIT I think I have found the answer. Using polar coordinates, I found $$ \frac{dr}{dt} = r - r^3 + 3r \sin^2(\theta) $$ Now, $$ \frac{dr}{dt} &gt; 0 \Leftrightarrow 0 &lt; r - r^3 + 3r \sin^2(\theta) \leq r - r^3 + 3r = 4r - r^3 $$ since $0 \leq \sin^2(\theta) \leq 1$. Note that $0 &lt; r \leq 1$ satisfies $4r - r^3 &gt; 0$, and thus $\frac{dr}{dt} &gt; 0$. Therefore, if a solution goes from $G$ to the edge of the unit circle, $r$ must, on the edge, either be decreasing or constant (i.e., its derivative is less than or equal to 0), contradicting the fact that the derivative is positive.  Can someone tell me if this is correct? Reducing voltage with resistors R's lmer cheat sheet nginx config fails with SSL key/pem (unique case) I am trying to install SSL on my nginx reverse proxy with certified ssl keys but i get this message when i try to restart server:  Restarting nginx: [emerg]: SSL_CTX_use_PrivateKey_file("/etc/nginx/conf.d/cert.key") failed (SSL: error:0906D06C:PEM routines:PEM_read_bio:no start line error:140B0009:SSL routines:SSL_CTX_use_PrivateKey_file:PEM lib) configuration file /etc/nginx/nginx.conf test failed   everyfiles are root:root with 600 permissions i've tested the certificats and they are validated with this website:   there are no trailing weird caracters in my keys, and has 64 caracter per line  here is my config file  server {     listen   443;     server_name     my.domain.com;     ssl on;     ssl_certificate      conf.d/cert.pem;     ssl_certificate_key  conf.d/cert.key;      location / {          proxy_pass         http://upstream1;          proxy_redirect     off;          proxy_buffering    off;          proxy_set_header        Host            $host;          proxy_set_header        X-Real-IP       $remote_addr;          proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;     }   }  Any ideas? Thank you Node.js on multi-core machines The abstract environment changes the \linewidth for the whole document In the article class, it seems that using the abstract environment has an effect to the rest of the document. More precisely, it seems that it redefines the \linewidth, which equals \textwidth without abstract, is smaller with the abstract. My feeling is that \linewidth is redefined for the abstract environment, but the value is not reseted at the end of the abstract.  Here is a minimal example:  \documentclass{article} \begin{document} \abstract{This is an abstract. This is an abstract.}\bigskip  This is text. This is text. This is text. This is text. This is text. This is text.\\  \rule{\textwidth}{3em} \rule{\linewidth}{3em} \end{document}   The output is not the same if you comment the \abstract line or not.  Do you have the same problem as I do when you compile (if not, I will upload some PDF files to show)? Is this a (known) bug in LaTeX2e? How can we circumvent the problem?  Note: I compile with the pdflatex command, and I use pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian). Allow diamond moderators to reverse question migrations? It has happened on occasion, due to the high amount of 10K moderators on SO that questions are migrated to the wrong site, and needs to be reversed. Although currently it is possible to re-open the question on the original site and delete the one on the destination site, it still leave the migrated too banner behind.  It would be useful if diamond moderators could reverse a migration, removing it from the destination site completely and re-activating it on the original site and at the same time removing the banners.  Previously it has been discussed educating the users around when to move questions, however this doesn't stop the problem.  As per Shog9  I have to admit I do like Shog9's suggestion regarding the post being closed as not programming related rather then re-opened, however, reasons for closing it on other sites should also be kept in mind, as this also applies to stuff being sent back forth between the sites. I've been reading forum posts and blogs who mention "my guy" syndrome as a specific type of difficult player, but I can't seem to find a solid definition for the term. Can someone explain this particular kind of problem player to me? How do you deal with this kind of problem? How do I show that $X = \left\{ (x,y) \in \mathbb{R}^2 \mid x \in \mathbb{Q}\text{ or }y \in \mathbb{Q}\right\}$ is path connected?    Note that $X$ is a topological space with subspace topology $\tau = \left\{ U \cap X \mid U\text{ is open in }\mathbb{R}^2\right\}$.  I only know two things (with respect to path connectedness):   A topological space $X$ is path connected iff for every $p,q \in X$, there is a continuous function $f: [a,b] \to X$ with $f(a)=p$ and $f(b) = q$.    Continuity $f$ is defined as for every open set in $X$, its preimage is open in $[a,b]$ (with subspace topology induced by $\mathbb{R}$ (with standard topology) )   Suppose $X$ and $Y$ are two topological spaces and $f: X \to Y$ is a continuous surjection. If $X$ is path connected, then $Y$ is path connected. It has been suggested by my employer that i should get the Hepatitis B vaccine to protect myself.  I have had two of the three parts, but this is the first time i have had a vaccine in more than one session.  The vaccine is in 3 doses, each around a month apart, followed up by a blood test.  Why is the Hepatitis B vaccine split into 3, any what is the blood test for at the end? Can a deb package contain a PPA dependency and install packages from the PPA? When creating a .deb package I create a file named control that contains some fields:  Package: my-qt-app-name Version: 0.01 Architecture: all Maintainer: my name &lt;my email address&gt; Installed-Size: 2 Depends: some-package-from-ppa Section: extras Priority: optional Homepage: my homepage Description: some description   some-package-from-ppa is not installed on the computer. It can be installed only adding a PPA, running apt-get update and then apt-get install some-package-from-ppa.  Can a control file from a deb package contain a PPA address and install that package when the deb file is installed? Can you use the /testfor command in minecraft 1.8 to find out if a player has died ?  I need it for my map, where 2 players (Only) are pitted against eachother. I want it so that when one of them dies, it will detect the death and declare the victor. I have a parent theme that uses correctly load_theme_textdomain() to load all the translated strings in many languages.  Then I created a child theme that uses load_child_theme_textdomain() to achieve the same thing for its strings.  There are certain translated strings for a particular language on the parent theme that I'd like to replace/override in the child theme.  I know if they were on a template file I could replace the file and simply change the textdomain for those strings, but unfortunately the ones I'm talking about are used in many places and also in the dashboard (so inside some filter/action functions).  So my question is: is there a way to replace those translated strings inside the child theme without having to replace parent template files or functions?  I don't know, maybe adding a parent-theme.mo file inside the languages folder of the child theme with only those strings translated, or something like that. Scoring matrices (BLOSUM & PAM) in BLAST and other sequence-comparison programs The  states that:      The scores are created by comparing the word in the list in step 2* with all the 3-letter words. By using the scoring matrix (substitution matrix) to score the comparison of each residue pair, there are 203 possible match scores for a 3-letter word. For example, the score obtained by comparing PQG with PEG and PQA is 15 and 12, respectively with the BLOSUM62 weighting scheme.   I do not understand how they got a score of 15 for PQG v. PEG. What is a scoring matrix, how is it computed, and how is it used?      Step 2 on that page is Make a k-letter word list of the query sequence: “Take k=3 for example, we list the words of length 3 in the query protein sequence (k is usually 11 for a DNA sequence) sequentially, until the last letter of the query sequence is included”. Vertical component of moving weight at a 45 degree angle Here's an easier one. I use the leg press machine at the gym so I don't have to worrying about hurting myself while lifting heavier weight.  The weight glides on a track that looks to be 45 degrees.  What's the equation to figure out how much weight I would be able to squat normally.  IE the vertical component of moving 400lbs at a 45 degree angle. This is what happens:  sudo apt-get install vlc Reading package lists... Done Building dependency tree        Reading state information... Done E: Unable to locate package vlc   Please help. I would also like to know when this error occurs, I've seen it before too. Can the Next/Prev Post links be ordered by menu order or by a meta key? I have a series of posts that are ordered by a meta_key value. They could also be arranged by menu order, if necessary.  The next/prev post links (generated by next_post_link, previous_post_link, or posts_nav_link all navigate by chronology. While I understand this default behaviour, I don't understand how to change it. I found that it maps through to adjacent_post_link in link-template.php, but then it starts to seem fairly hard-coded. Is it recommended to re-write this from scratch to replace it, or is there a better solution.