我特别关注何时在char指针上使用malloc
char *ptr;
ptr = "something";
...code...
...code...
ptr = "something else";
Run Code Online (Sandbox Code Playgroud)
malloc是否会为了这个微不足道的东西?如果是,为什么?如果没有,那么什么时候需要char指针?
我试图替换字符串的特定位置的字符.
例如:
String str = "hi";
Run Code Online (Sandbox Code Playgroud)
将字符串位置#2(i)替换为另一个字母"k"
我该怎么做?谢谢!
我试图找出一个结构真的'是'并遇到问题,所以我真的有两个问题:
1)'sara'中保存了什么?它是指向结构的第一个元素的指针吗?
2)更有趣的问题:为什么不编译?GCC说"test.c:10:错误:分配中的不兼容类型",我无法弄清楚为什么......(这部分已经通过你的答案解决了,太棒了!)
#include <stdio.h>
struct name {
char first[20];
char last[20];
};
int main() {
struct name sara;
sara.first = "Sara";
sara.last = "Black";
printf("struct direct: %x\n",sara);
printf("struct deref: %x\t%s\n", *sara, *sara);
}
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助!
如何将NSString*转换为char?
编辑:感谢弗拉基米尔让我到那儿!
NSString *myString = @"HelloWorld";
const char *stringAsChar = [myString cStringUsingEncoding:[NSString defaultCStringEncoding]];
Run Code Online (Sandbox Code Playgroud)
希望这有助于未来的人!
是否有可能获得char*一个string在C#中的变量?
我需要将路径字符串转换char*为使用某些原生win32函数...
我有字符串 str
char *str = "100.10b.100.100";
Run Code Online (Sandbox Code Playgroud)
我想计算'.'in 的出现次数str,最好是单行.(如果可能没有循环)
我的方法是标准strchr:
int i = 0;
char *pch=strchr(str,'.');
while (pch!=NULL) {
i++;
pch=strchr(pch+1,'.');
}
Run Code Online (Sandbox Code Playgroud) 您好我试图从字符串中删除所有特定字符.我一直在使用String.Replace,但它没有,我不知道为什么.这是我目前的代码.
public string color;
public string Gamertag2;
private void imcbxColor_SelectedIndexChanged(object sender, EventArgs e)
{
uint num;
XboxManager manager = new XboxManagerClass();
XboxConsole console = manager.OpenConsole(cbxConsole.Text);
byte[] Gamertag = new byte[32];
console.DebugTarget.GetMemory(0x8394a25c, 32, Gamertag, out num);
Gamertag2 = Encoding.ASCII.GetString(Gamertag);
if (Gamertag2.Contains("^"))
{
Gamertag2.Replace("^" + 1, "");
}
color = "^" + imcbxColor.SelectedIndex.ToString() + Gamertag2;
byte[] gtColor = Encoding.ASCII.GetBytes(color);
Array.Resize<byte>(ref gtColor, gtColor.Length + 1);
console.DebugTarget.SetMemory(0x8394a25c, (uint)gtColor.Length, gtColor, out num);
}
Run Code Online (Sandbox Code Playgroud)
它基本上从我的Xbox 360中检索字符串的字节值,然后将其转换为字符串形式.但我希望它删除"^"的所有实例String.Replace似乎不起作用.它什么都没做.它只是留下以前的字符串.任何人都可以向我解释它为什么这样做?
我想转换一个char数组[],如:
char myarray[4] = {'-','1','2','3'}; //where the - means it is negative
Run Code Online (Sandbox Code Playgroud)
所以它应该是整数:-1234使用C中的标准库.我找不到任何优雅的方式来做到这一点.
我可以肯定附加'\ 0'.
阅读这个问题时,我的脑海中浮现出一个疑问:
那么TEXT实际占用了多少字节?~65kb或使用的字符数+ 1?
我在这里 char text[60];
然后我做了一个if:
if(number == 2)
text = "awesome";
else
text = "you fail";
Run Code Online (Sandbox Code Playgroud)
它总是说表达式必须是可修改的L值.