# imul > Perform C-like multiplication of two signed 32-bit integers.
## Usage ```javascript var imul = require( '@stdlib/math/base/special/imul' ); ``` #### imul( a, b ) Performs C-like multiplication of two signed 32-bit integers. ```javascript var v = imul( -10|0, 4|0 ); // returns -40 v = imul( 1073741824|0, -5|0 ); // 2^30 * -5 = -5368709120 => 32-bit integer overflow // returns -1073741824 ```
## Notes - The function emulates C-like multiplication of two signed 32-bit integers.
## Examples ```javascript var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var INT32_MIN = require( '@stdlib/constants/int32/min' ); var INT32_MAX = require( '@stdlib/constants/int32/max' ); var imul = require( '@stdlib/math/base/special/imul' ); var randi; var a; var b; var y; var i; randi = discreteUniform( INT32_MIN, INT32_MAX ); for ( i = 0; i < 100; i++ ) { a = randi()|0; b = randi()|0; y = imul( a, b ); console.log( '%d x %d = %d', a, b, y ); } ```