如何将"./"替换为""?我试过了:
String s = "./";
s.replaceAll("\\./","");
Run Code Online (Sandbox Code Playgroud)
为什么以上的工作对我不起作用?
我用c ++编写代码,非常简单.
using namespace std;
int main(){
char cName[30], cFirst[15], cSur[30];
cout << "Enter your name: " << endl;
cin.getline(cName, 29);
for( int i = 0; i < 29; i++)
if(cName[i] == ' ')
break;
strncpy(cFirst, cName, i);
cFirst[i] = '\0';
strncpy(cSur,cName + i + 1);
cSur[i] = '\0';
cout << cSur << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但是,程序停止编译,strncpy(cFirst, cName, i);我收到此错误消息"函数'char*strncpy(char*,const char*,size_t)'的参数太少.有人可以解释一下我做错了什么吗?
我对Objective-C比较新,我知道它是C的超集.但是当我尝试在GCC中编译这个C代码时,它给了我一个错误,我无法执行代码.
#include <stdio.h>
int main(){
int x;
printf("Input int:\n");
scanf("%d", x);
printf("%d", x);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
当我执行其他代码时,没有错误,但输出错误.注意:唯一的变化是"int*x".
#include <stdio.h>
int main(){
int *x;
printf("Input int:\n");
scanf("%d", x);
printf("%d", x);
return 0;
}
INPUT: 3
OUTPUT: 2147307520
Run Code Online (Sandbox Code Playgroud) 我是C语言的新手.在下面的代码中,我正在检查输入值是否大于23或小于0,如果是,我再询问一个新值,但现在我想检查任何字符串值然后再次询问一个新值.
#include <stdio.h>
int main(void) {
int h;
printf("Value: ");
scanf("%d", &h);
while ((h < 0) || (h > 23)) {
printf("Value: ");
scanf("%d", &h);
}
printf("You pressed:%d\n", h);
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试将素数打印到从用户获得的某个值.如果我只收到1的答案,我想我的for循环有问题吗?
#include <stdio.h>
#include <cs50.h>
int main (void)
{
printf("Length: ");
int length = GetInt();
bool notPrime = false;
for (int i = 1; i < length; i++)
{
for (int k = 1; k <= i/2; k++)
{
if (i % k == 0)
{
notPrime = true;
break;
}
else
{
notPrime = false;
}
}
if (notPrime == false)
{
printf("%d ", i);
}
}
printf("\n");
}
Run Code Online (Sandbox Code Playgroud) 我正在学习哈佛大学的 CS50 课程,我必须用 C 创建一个程序来查找信用卡号是否有效。例如,我想从这个数字 378282246310005 得到像这个 7224300 这样的每隔一个数字,所以我是这样开始的:
printf("Number\n");
long long cardNum = GetLongLong();
Run Code Online (Sandbox Code Playgroud)
我不知道我需要使用哪些方法来获取其他数字来进行计算。
以下代码将打印arr[1]〜arr[5].
int arr[5], i=0;
while(i<5){
arr[i]=++i;
printf("%d, ", arr[i]);
}
Run Code Online (Sandbox Code Playgroud)
我的问题是一个固定长度的数组:我们可以在没有任何限制的情况下添加一个新元素吗?
我在Stevens在 Unix 环境中的高级编程中做练习时遇到了这个问题:
perror是用 ISO C 属性定义的const,而整数参数 tostrerror不是用这个属性定义的。为什么?perror用const属性定义的函数是因为我们通常向它传递一个文字字符串吗?
void perror(const char *s);
char *strerror(int errnum);
Run Code Online (Sandbox Code Playgroud) 我们假设我有这个代码:
char *pointer;
unsigned int a;
pointer = a;
Run Code Online (Sandbox Code Playgroud)
对我来说,这不会产生任何问题,但我会收到以下警告:
assignment makes pointer from integer without a cast
Run Code Online (Sandbox Code Playgroud)
为什么使用演员阵容更好?我正在使用32位机器.
编辑:通过"这不会产生任何问题",我说它编译并指针存储变量的值a.
编辑:变量a实际上会存储一个地址.