diff --git a/src/fft_kernelstring.cpp b/src/fft_kernelstring.cpp
index f14b0aab474dffa8a72411afa1cb17c701406c3c..7b493704ac15ec0401b093a49b86de91c8891344 100644
--- a/src/fft_kernelstring.cpp
+++ b/src/fft_kernelstring.cpp
@@ -987,7 +987,7 @@ insertSinCosCalcDirectNative(string & kernel_string, cl_fft_plan *plan, int num,
 #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
     const char format[] = "%a"; 
 #else
-    const char format[] = "%f";
+    const char format[] = "%.10e";
 #endif
 
     if(denom & (denom-1)) {
@@ -1026,7 +1026,7 @@ insertSinCosCalcDirect(string & kernel_string, cl_fft_plan *plan, int num, int d
 #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
     const char format[] = "%a";
 #else
-    const char format[] = "%f";
+    const char format[] = "%.10e";
 #endif
 
   if(denom & (denom-1)) {
@@ -1110,7 +1110,7 @@ insertSinCosCalcTaylor3(string & kernel_string, cl_fft_plan *plan, int num, int
 #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
     const char format[] = "%a";
 #else
-    const char format[] = "%f";
+    const char format[] = "%.10e";
 #endif