How to apply a generated filename to the mex command?
    15 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
    Christoph
 le 28 Oct 2025 à 6:15
  
    
    
    
    
    Commenté : Christoph
 le 28 Oct 2025 à 7:07
            In a .m file, I am able to run mex on a file e.g. mex myfile8_1.c and then successfully call the resulting mex function with myfile8_1()
In fact the "8_1" component may change, so I construct a string and use str2func() to generate the function name to use. However when I construct a string to use as input for mex, mex fails e.g.
script_version = "8_1";
process_filename = strcat("myfile", script_version, ".c");
mex process_filename
This results in an error that no file named process_filename exists in the current directory (but of course "myfile8_1.c" does exist). 
Where str2func() is able to convert a string to a function variable, is there something similar which will convert a string into a filename variable in a way acceptable to the mex command?
Alternatively is there a way to tell mex to treat the next input is a variable rather than an actual filename?
Thanks for any help,
chris
0 commentaires
Réponse acceptée
  Walter Roberson
      
      
 le 28 Oct 2025 à 6:32
        script_version = "8_1";
process_filename = strcat("myfile", script_version, ".c");
mex(process_filename)
1 commentaire
Plus de réponses (0)
Voir également
Catégories
				En savoir plus sur Write C Functions Callable from MATLAB (MEX Files) dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

