问题列表 - 第39772页

C++在指向char数组Pointer的指针上使用strcpy_s()

我自己也很困惑,但这就是我所拥有的.我最近才开始用指针来自己熟悉更多的一个点,我觉得更舒适的使用他们,但我得到关于strcpy_s缓冲器()太小错误.

请使用字符数组代替的std :: string,关于我的任何意见及其对围绕字符数组居中HL2SDK(不知道为什么),所以我只是坚持的模式.

void func_a()
{
    char *szUserID = new char[64];
    char *szInviterID = new char[64];
    char *szGroupID = new char[64];
    sprintf(szUserID, "%I64d", GetCommunityID(szUserSteamID));
    sprintf(szInviterID, "%I64d", GetCommunityID(g_CvarSteamID.GetString()));
    GetGroupCommunityID(1254745, &szGroupID); // Group Steam Community ID
}

void GetGroupCommunityID(int groupID, char **communityID)
{
    int staticID = 1035827914;
    int newGroupID = 29521408 + groupID;

    char *buffer = new char[64];
    snprintf(buffer, sizeof(buffer), "%d%d", staticID, newGroupID);
    strcpy_s(*communityID, sizeof(*communityID), buffer);

    delete buffer;
}
Run Code Online (Sandbox Code Playgroud)

c++ arrays char

2
推荐指数
1
解决办法
8820
查看次数

pthread互斥体的"属性"是什么?

函数pthread_mutex_init允许您指定指向属性的指针.但我还没有找到pthread属性的详细解释.我总是提供NULL.这个论点有用吗?

文档,对于那些忘记它的人:

PTHREAD_MUTEX_INIT(3)BSD库函数手册
PTHREAD_MUTEX_INIT(3)

名称pthread_mutex_init - 创建互斥锁

概要

 #include <pthread.h>

 int
 pthread_mutex_init(pthread_mutex_t *restrict mutex,
     const pthread_mutexattr_t *restrict attr);
Run Code Online (Sandbox Code Playgroud)

说明pthread_mutex_init()函数创建一个新的互斥锁,其属性由attr指定.如果attr为NULL,则使用默认属性.

attributes mutex pthreads

25
推荐指数
2
解决办法
3万
查看次数

如何在Linux上安装和使用GAS(GNU编译器)?

我正在使用Ubuntu,我正在为Linux寻找汇编编译器,我发现了GAS.

我正在尝试安装并运行它,但我不能.

linux ubuntu assembly gnu-assembler

10
推荐指数
2
解决办法
2万
查看次数

什么是最小的SQL注入攻击字符序列?

简单,一个SQL注入攻击尽可能少的字符.注意,我并不是试图通过将输入限制到一定的大小来防止SQL注入攻击,而是真的很奇怪即使是最简单的攻击也需要多少个字符才能执行.

为了后人,让我们说最小的表名是4个字符,例如"user".请考虑一下.

sql code-injection

6
推荐指数
2
解决办法
3087
查看次数

preg_replace成功与否

有没有办法判断preg_replace是否成功?

我试过了:

<?php

$stringz = "Dan likes to eat pears and his favorite color is green and green!";
$patterns = array("/pears/","/green/", "/red/");

if ($string = preg_replace($patterns, '<b>\\0</b>', $stringz, 1)) {
echo "<textarea rows='30' cols='100'>$string</textarea>";
}else{
    echo "Nope. You didn't have all the required patterns in the array.";
    }

?>
Run Code Online (Sandbox Code Playgroud)

是的,我看了这个文档的php文档.对于我之前的愚蠢问题感到抱歉.

php

4
推荐指数
2
解决办法
2340
查看次数

MobileMe的Find My iPhone使用了哪些API?

Apple如何远程轮询手机的位置?是否有任何API允许应用程序开发人员对SDK执行相同的操作?

iphone objective-c

0
推荐指数
1
解决办法
1072
查看次数

如何判断PHP中的字符串是否附加了或添加了换行符?

我刚刚回答了这个问题,并试图提出一个正则表达式,true如果一个字符串在前面或后面有换行符,它将返回.

我想出了这个 ......

var_dump(preg_match('/^\n|\n$/', $testVar));
Run Code Online (Sandbox Code Playgroud)

但我得到错误......

警告:preg_match():第5行的内部pcre_fullinfo()错误-3

我不知道我做错了什么.对我说匹配,换行是第一个字符或最后一个字符.

请赐教.

谢谢.

更新

我意识到这个问题标题应该是为什么我的正则表达式不起作用?或类似的.

但是,我将按原样保留它,并欢迎正则表达式的替代解决方案.

php regex

1
推荐指数
1
解决办法
2198
查看次数

我知道导致段错的原因,但为什么呢?

好的,所以我有一个简单的c ++程序,应该在由int组成的数组上运行几个排序算法并跟踪每个人所需的时间..非常基本,但是我遇到了问题.

当程序首次启动时,它会询问您在阵列中需要多少项.我的任务涉及将数组设置为从100个项目到750000的特定长度.它将处理许多值,包括高达600000左右.当我尝试750000时,它会立即发生段错误.这里和那里的几个小姐让我发现当初始化第四个数组(所有相同长度)时会发生错误.奇怪的是它只发生在我的操作系统上; 在我的学校,它没有问题.(我在最新的ubuntu,而我的学校使用redhat.不确定这是否有用)

我将包含完整的代码仅供参考,但段错误发生在第27行:

int array1[num], array2[num], array3[num], array4[num]; // initialize arrays 
Run Code Online (Sandbox Code Playgroud)

我知道这是因为我在不同的行上初始化每个数组,并在其间放置couts.array1,2和3被初始化,然后是segfaults.同样,这仅在阵列长于约600000左右时发生.任何不太好的工作.

完整代码:

#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;

void insertionSort(int array[], int size);
void bubbleSort(int array[], int size);
void mergeSort(int array[], int first, int last, int size);
void quickSort(int array[], int size);

int main()
{

    cout << endl << endl << "\t\t**** Extra Credit Assignment- Sorting ****" << endl << endl << endl;
    cout << "Enter the number of items to sort: ";
    int …
Run Code Online (Sandbox Code Playgroud)

c++ segmentation-fault

2
推荐指数
1
解决办法
457
查看次数

将UIView或UIWindow置于状态栏上方

我的目标是在iPhone应用程序顶部的状态栏上方绘制一个隐形按钮(尺寸为320*20像素).

无论我尝试什么,都会出现问题:

  1. 例如,我尝试创建一个新视图.当我想将视图放在我的应用程序顶部时,它总是消失在状态栏后面而不是在它前面!

  2. 我在Stackoverflow上找到了另一个好主意: 将UIView添加到所有其他视图之上,包括StatusBar 即使不推荐第二个UIWindow,我也尝试实现它.它直到我注意到一个问题时才按照我想要的方式工作:键盘在需要时不再出现(例如在文本框中单击时)!

我怎么可能解决这个问题?或者有更好的解决方法吗?这是我创建第二个窗口的代码:

// Create window
statusWindow = [[UIWindow alloc] initWithFrame:CGRectMake(0,0,320,20)];
statusWindow.windowLevel = UIWindowLevelStatusBar;
[statusWindow makeKeyAndVisible];

// Create statusBarButton
statusBarButton = [UIButton buttonWithType:UIButtonTypeCustom];
CGRect buttonFrame2 = statusBarButton.frame;
buttonFrame2.size = CGSizeMake(320,20);
statusBarButton.frame = buttonFrame2;
[statusBarButton addTarget:self action:@selector(goTop) forControlEvents:UIControlEventTouchUpInside]; 

// Place button into the new window
[statusWindow addSubview:statusBarButton];
Run Code Online (Sandbox Code Playgroud)

iphone keyboard statusbar uiview uiwindow

7
推荐指数
3
解决办法
2万
查看次数

LINQ:Group By + Where in子句

我正在尝试where in (select ...)在LINQ中实现T-SQL等效代码.

这就是我现在拥有的:

int contactID = GetContactID();
IEnumerable<string> threadList = (from s in pdc.Messages
                             where s.ContactID == contactID
                             group 1 by new { s.ThreadID } into d
                             select new { ThreadID = d.Key.ThreadID}).ToList<string>();

        var result = from s in pdc.Messages
                     where threadList.Contains(s.ThreadID)
                     group new { s } by new { s.ThreadID } into d
                     let maxMsgID = d.Where(x => x.s.ContactID != contactID).Max(x => x.s.MessageID)
                     select new {
                         LastMessage = d.Where(x => x.s.MessageID == maxMsgID).SingleOrDefault().s
                     };
Run Code Online (Sandbox Code Playgroud)

但是,由于以下错误,我的代码将无法编译 …

linq linq-to-sql

3
推荐指数
1
解决办法
2万
查看次数