diff options
author | schnetter <schnetter@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2004-04-12 14:53:18 +0000 |
---|---|---|
committer | schnetter <schnetter@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2004-04-12 14:53:18 +0000 |
commit | f2079dc85018c0314d5d0d6913a5973cfcf98077 (patch) | |
tree | 1fe77f753b3de659bcc0d58aa9d4802f65599272 | |
parent | 550e319d8afd03c568a311bab08132e38bc70208 (diff) |
Add macros *_FORTSTRING_LEN that allow C code to access the string
length.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3659 17b73243-c579-4c4c-a9d2-2d5706c11dac
-rw-r--r-- | src/include/cctk_FortranString.h | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/src/include/cctk_FortranString.h b/src/include/cctk_FortranString.h index 5a5df53e..ba2d242d 100644 --- a/src/include/cctk_FortranString.h +++ b/src/include/cctk_FortranString.h @@ -31,7 +31,7 @@ _fcd cctk_str1, _fcd cctk_str2, _fcd cctk_str3 #define ONE_FORTSTRING_CREATE(arg1)\ - int cctk_strlen1 = _fcdlen(cctk_str1); \ + int cctk_strlen1 = _fcdlen(cctk_str1);\ char *arg1 = Util_NullTerminateString(_fcdtocp(cctk_str1),cctk_strlen1); #define TWO_FORTSTRING_CREATE(arg1,arg2)\ int cctk_strlen1 = _fcdlen(cctk_str1);\ @@ -56,6 +56,16 @@ char *arg2 = _fcdtocp(cctk_str2);\ char *arg3 = _fcdtocp(cctk_str3); +#define ONE_FORTSTRING_LEN(len1)\ + size_t len1 = _fcdlen(cctk_str1); +#define TWO_FORTSTRING_LEN(len1,len2)\ + size_t len1 = _fcdlen(cctk_str1);\ + size_t len2 = _fcdlen(cctk_str2); +#define THREE_FORTSTRING_LEN(len1,len2,len3)\ + size_t len1 = _fcdlen(cctk_str1);\ + size_t len2 = _fcdlen(cctk_str2);\ + size_t len3 = _fcdlen(cctk_str3); + /* DEPRECATED BETA 10 */ #define TWO_FORTSTRINGS_ARGS\ _fcd cctk_str1, _fcd cctk_str2 @@ -112,6 +122,16 @@ char *arg2 = cctk_str2;\ char *arg3 = cctk_str3; +#define ONE_FORTSTRING_LEN(len1)\ + size_t len1 = cctk_strlen1; +#define TWO_FORTSTRING_LEN(len1,len2)\ + size_t len1 = cctk_strlen1;\ + size_t len2 = cctk_strlen2; +#define THREE_FORTSTRING_LEN(len1,len2,len3)\ + size_t len1 = cctk_strlen1;\ + size_t len2 = cctk_strlen2;\ + size_t len3 = cctk_strlen3; + /* DEPRECATED BETA 10 */ #define TWO_FORTSTRINGS_ARGS\ char *cctk_str1, int cctk_strlen1, char *cctk_str2, int cctk_strlen2 @@ -169,6 +189,16 @@ char *arg2 = cctk_str2;\ char *arg3 = cctk_str3; +#define ONE_FORTSTRING_LEN(len1)\ + size_t len1 = cctk_strlen1; +#define TWO_FORTSTRING_LEN(len1,len2)\ + size_t len1 = cctk_strlen1;\ + size_t len2 = cctk_strlen2; +#define THREE_FORTSTRING_LEN(len1,len2,len3)\ + size_t len1 = cctk_strlen1;\ + size_t len2 = cctk_strlen2;\ + size_t len3 = cctk_strlen3; + /* DEPRECATED BETA 10 */ #define TWO_FORTSTRINGS_ARGS\ char *cctk_str1,\ |