Comment concaténer const/literal chaînes de caractères en C?

Je travaille en C, et je dois concaténer un peu les choses.

Maintenant j'ai ceci:

message = strcat("TEXT ", var);

message2 = strcat(strcat("TEXT ", foo), strcat(" TEXT ", bar));

Maintenant, si vous avez de l'expérience en C, je suis sûr que vous vous rendez compte que cela vous donne une erreur de segmentation lorsque vous essayez d'exécuter. Alors, comment puis-je contourner cela?

  • Je voudrais suggérer que vous utilisez strlcat au lieu de strcat! gratisoft.us/todd/papers/strlcpy.html
  • Je voudrais repeart Cette suggestion. Strcat causes de la vulnérabilité de débordement de la mémoire tampon exploits. Quelqu'un peut donner à votre programme de données qui en est la cause pour exécuter du code arbitraire.
InformationsquelleAutor The.Anti.9 | 2008-11-21