diff --git a/icu4c/source/common/unicode/platform.h b/icu4c/source/common/unicode/platform.h
index c8f4221fdf3..99e9da88ea2 100644
--- a/icu4c/source/common/unicode/platform.h
+++ b/icu4c/source/common/unicode/platform.h
@@ -144,7 +144,7 @@
 #   define U_PLATFORM U_PF_IRIX
 #elif defined(__APPLE__) && defined(__MACH__)
 #   include <TargetConditionals.h>
-#   ifdef TARGET_OS_IPHONE  /* variant of TARGET_OS_MAC */
+#   if defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE  /* variant of TARGET_OS_MAC */
 #       define U_PLATFORM U_PF_IPHONE
 #   else
 #       define U_PLATFORM U_PF_DARWIN
diff --git a/icu4c/source/test/cintltst/cmsgtst.c b/icu4c/source/test/cintltst/cmsgtst.c
index b5ebf4e48dd..b163b0b2994 100644
--- a/icu4c/source/test/cintltst/cmsgtst.c
+++ b/icu4c/source/test/cintltst/cmsgtst.c
@@ -219,7 +219,7 @@ static void MessageFormatTest( void )
                         austrdup(result), austrdup(testResultStrings[i]) );
                 }
 
-#if U_PLATFORM == U_PF_DARWIN  /* add platforms here .. */
+#if U_PLATFORM_IS_DARWIN_BASED  /* add platforms here .. */
                 log_verbose("Skipping potentially crashing test for mismatched varargs.\n");
 #else
                 log_verbose("Note: the next is a platform dependent test. If it crashes, add an exclusion for your platform near %s:%d\n", __FILE__, __LINE__);