14

For my bachelor thesis, I have to reference a lot to the various C++ standard documents, be it the original standard or some of the working drafts.

How do I cite such documents? Many of the working drafts don't even contain a title page to extract information from.

Working drafts are available at https://isocpp.org/std/the-standard

Daniel Jour
  • 290
  • 2
  • 10
  • 1
    The 2014-11-19 version of c++ draft has document number and revise number ( I got it from download). These info should be enough for you to cite. Would you give a better example? – Nobody May 11 '15 at 07:56

2 Answers2

12

I would cite the current version of C++ standard, based on the APA Style (6th edition), in particular, based on the APA guidelines for citing electronic sources (Web publications), as follows:

ISO/IEC. (2014). ISO International Standard ISO/IEC 14882:2014(E) – Programming Language C++. [Working draft]. Geneva, Switzerland: International Organization for Standardization (ISO). Retrieved from https://isocpp.org/std/the-standard

NOTE: When the current standard will be finalized and published, the citation will have to be updated accordingly by removing "[Working draft.]" phrase and updating the year (i.e., 2015).

Aleksandr Blekh
  • 11,462
  • 2
  • 35
  • 79
  • Ah ... ok, what does that "(E)" after 14882:2014 mean? To cite C++11 I'd then use 14882:2011, for C++03 14882:2003 and for C++98 14882:1998? (see http://www.open-std.org/jtc1/sc22/wg21/docs/standards) – Daniel Jour May 11 '15 at 21:53
  • Moreover: Do I need to mirror their "withdrawn" state? (see http://en.cppreference.com/w/Cppreference:FAQ) – Daniel Jour May 11 '15 at 22:05
  • @DanielJour: I'm not 100% sure, but my best guess is that (E) indicates the English language version of an ISO standard (I've seen that in some other ones). Another possibility, but less likely, is that it refers to an early draft of a standard. The rest of the naming convention you figured out IMHO correctly. – Aleksandr Blekh May 11 '15 at 22:07
  • @DanielJour: You can mention the withdrawn state for 2011 version, but I would prefer and recommend to reference the valid working draft, instead, especially since the differences are minor. – Aleksandr Blekh May 11 '15 at 22:09
  • Which biblatex-entry-type do you use here? – buhtz Oct 15 '17 at 10:45
  • @buhtz My answer above is general and doesn't imply LaTeX bibliography management. Having said that, consider this: 1) biblatex does not support the standard type out-of-the-box (see p. 13 of the package documentation); 2) several biblatex type options can be used, depending on chosen/required style guide (e.g., report, misc, custom, book); 3) some relevant info on TeX SE: https://tex.stackexchange.com/q/203901/48376 and https://tex.stackexchange.com/q/65637/48376. – Aleksandr Blekh Oct 16 '17 at 00:51
  • Do they have a DOI? – user2023370 Dec 15 '23 at 11:08
2

One can find nearly every citation for the C++ standards in BibTeX format here:

http://ftp.math.utah.edu/pub/tex/bib/isostd.html

For example, here is the reference to the ISO C++98 standard:

@Book{ISO:1998:IIP,
  author =       "{ISO}",
  title =        "{ISO\slash IEC 14882:1998}: {Programming} languages
                 --- {C++}",
  publisher =    pub-ISO,
  address =      pub-ISO:adr,
  pages =        "732",
  day =          "1",
  month =        sep,
  year =         "1998",
  ISBN =         "????",
  ISBN-13 =      "????",
  LCCN =         "????",
  bibdate =      "Tue Dec 12 06:45:55 2000",
  bibsource =    "http://www.math.utah.edu/pub/tex/bib/isostd.bib;
                 http://www.math.utah.edu/pub/tex/bib/mathcw.bib",
  note =         "Available in electronic form for online purchase at
                 \path=http://webstore.ansi.org/= and
                 \path=http://www.cssinfo.com/=.",
  price =        "CHF 351, US\$18 (electronic), US\$252 (print);
                 US\$245.00",
  URL =          "http://webstore.ansi.org/ansidocstore/product.asp?sku=ISO%2FIEC+14882%2D1998;
                 http://webstore.ansi.org/ansidocstore/product.asp?sku=ISO%2FIEC+14882%3A1998;
                 http://www.iso.ch/cate/d25845.html;
                 https://webstore.ansi.org/",
  acknowledgement = ack-nhfb,
  xxISBN =       "none",
}

You can copy and paste this into your .bib file containing citations for LaTeX, which you should be using instead of Word anyway : ) You can use the natbib package to format it into whichever citation style you like.

  • I'd prefer citing one of the draft versions, because they are available for free ($0) instead of being quite expensive ($245). Unless it really, really has to be an official standard and not a draft that could have ended up as the standard. – gnasher729 Jul 05 '23 at 15:27