Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the "atom" data type?

Tags:

c++

types

winapi

I have encountered the ATOM type in the Win32api and also in the Acrobat API there is ASAtom.

As far as I can tell, atoms are keys for a hash table usually of strings to enable fast look up and share data between applications. Is this correct and what is the etymology of the atom type?

EDIT

After some extensive searching I noticed Prolog uses atoms, so there must be some origin to this word. It seems it used to refer to any single piece of data.

like image 603
Jesse Good Avatar asked May 09 '12 23:05

Jesse Good


People also ask

What is atom in c++?

This Atom package allows you to compile and run C++ and C within the editor. To compile C or C++, press F5 or right click the file in tree view and click Compile and Run . To compile C or C++ and attach the GNU Debugger, press F6 or right click the file in tree view and click Compile and Debug .

What is atom table?

An atom table is a system-defined table that stores strings and corresponding identifiers. An application places a string in an atom table and receives a 16-bit integer, called an atom, that can be used to access the string.

What are atoms Windows?

Atom is a free and open-source text and source code editor for macOS, Linux, and Microsoft Windows with support for plug-ins written in JavaScript, and embedded Git Control. Developed by GitHub, Atom is a desktop application built using web technologies.


1 Answers

ATOM is a 16-bit Windows handle-like primitive. It's value is completely opaque to user-mode. It is not a pointer or an index.

typedef unsigned short ATOM;

like image 128
SecurityMatt Avatar answered Sep 22 '22 09:09

SecurityMatt