--- layout: stdlib-reference --- # modf ## Description Split into integer and fractional parts (both with same sign). ## Signature
T modf<T>(
    T x,
    out T ip)
    where T : __BuiltinFloatingPointType;

vector<T, N> modf<T, int N>(
    vector<T, N> x,
    out vector<T, N> ip)
    where T : __BuiltinFloatingPointType;

matrix<T, N, M> modf<T, int N, int M, int L>(
    matrix<T, N, M> x,
    out matrix<T, N, M> ip)
    where T : __BuiltinFloatingPointType;

## Generic Parameters #### T: [\_\_BuiltinFloatingPointType](../interfaces/0_builtinfloatingpointtype-029hm/index.html) #### N : int #### M : int #### L : int ## Parameters #### x : [T](modf.html#typeparam-T) The input value. #### ip : [T](modf.html#typeparam-T) \[out\] The integer part of x. #### x : [vector](../types/vector/index.html)\<[T](../types/vector/index.html#typeparam-T), [N](../types/vector/index.html#decl-N)\> The input value. #### ip : [vector](../types/vector/index.html)\<[T](../types/vector/index.html#typeparam-T), [N](../types/vector/index.html#decl-N)\> \[out\] The integer part of x. #### x : [matrix](../types/matrix/index.html)\<[T](../types/matrix/t-0.html), [N](../types/matrix/index.html#decl-N), [M](../types/matrix/index.html#decl-M)\> The input value. #### ip : [matrix](../types/matrix/index.html)\<[T](../types/matrix/t-0.html), [N](../types/matrix/index.html#decl-N), [M](../types/matrix/index.html#decl-M)\> \[out\] The integer part of x. ## Return value The fractional part of x. ## Availability and Requirements Defined for the following targets: #### hlsl Available in all stages. #### glsl Available in all stages. #### cpp Available in all stages. #### cuda Available in all stages. #### metal Available in all stages. #### wgsl Available in all stages. #### spirv Available in all stages. #### llvm Available in all stages.